Rust 编写高性能 CLI 工具的优雅模式:clap + tokio + anyhow
用 Rust 写终端工具现在已经成为一种享受。分享一个生产级 CLI 的黄金搭档组合:
- clap (v4):强大的基于 derive 宏的参数解析,几行结构体定义自动生成全套
--help与补全脚本; - tokio:异步运行时支持高并发网络 I/O;
- anyhow & thiserror:错误处理的黄金分工(应用层用 anyhow 快速传播上下文,库层用 thiserror 严谨分流);
- indicatif:精美优雅的终端进度条与转圈动画。
单二进制文件无依赖分发,启动几十毫秒内完成,体验极其丝滑。