1 个不稳定版本
0.0.1 | 2024年6月18日 |
---|
#31 在 #unix-shell
37KB
1K SLoC
crsh
糟糕的 Rust SHell。用 Rust 编写的 Unix Shell 的基本实现,不打算实际使用或认真对待。
功能
- 功能提示符
- 命令启动、管道和逻辑分组
- 基本内置命令
cd
、which
、exit
- 非交互模式
- 提示历史记录
待办事项
- 命令列表
- 完善内置命令
- 完全功能的 IO 重定向
- 历史记录持久化
- 设置/取消设置 Shell 选项
- 设置/读取环境变量
- 类似 Bash 的变量扩展
- 启动子 Shell
- 完整的脚本功能
- 重写解析器以使用算术表达式后缀法
- 实现基于堆栈的编译器/解释器
- 实现
ctrl-z
和ctrl-c
以及适当的信号处理 - 新的脚本语言
- 自定义提示符样式
- 加载配置文件(例如
.profile
、.*rc
、.*env
) - 自动完成
- 语法高亮
依赖项
~2.5–9.5MB
~64K SLoC