主要观点:
“brush”是一个用 Rust 实现的兼容 POSIX 和 bash 的 shell,在 Linux、macOS 和 WSL 上构建和测试,原生 Windows 支持为实验性的。它可用于交互式使用,能执行多数“sh”和“bash”脚本,但有已知限制,如部分“set”和“shopt”选项未完全实现、“history”内置命令及对命令历史的编程操作支持不足等。欢迎各种贡献和反馈,项目有社区 Discord 服务器。主要通过与其他现有 shell 比较行为进行测试,依赖多个 OSS crate 实现功能,也使用多种工具进行测试和工程支持,还有其他非 C/C++实现的 POSIX 风格 shell 可供参考。
关键信息:
- 可从 GitHub 发布的预构建二进制文件、
cargo binstall
、源代码、Nix 和 Arch Linux 安装。 - 社区 Discord 服务器链接为https://discord.gg/kPRgC9j3Tj。
- 主要依赖的 OSS crate 包括
reedline
、clap
、fancy-regex
、tokio
、nix
rust crate 等,用于测试等的工具有pprof-rs
、criterion.rs
、bash-completion
等。 - 有其他非 C/C++实现的 POSIX 风格 shell 如
nushell
、rusty_bash
、mvdan/sh
、Oils
、fish
等。
重要细节:
- 运行
brush
时会处理.bashrc
等配置,可通过创建~/.brushrc
文件区分其外观。 - 项目基于 MIT 许可证,可自由使用和分发。
- 集成测试包含 675+测试用例,通过与 oracle 比较标准输出和退出码来测试。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。