12 个版本 (破坏性更新)

使用旧的 Rust 2015

0.8.0 2018 年 11 月 29 日
0.6.0 2018 年 11 月 14 日

#740 in 命令行界面

每月 49 次下载

MIT 许可证

72KB
1K SLoC

Rust 的 commandlines

Crates.io Build Status Build status codecov MIT License

关于

commandlines 是用于 Rust 命令行界面应用程序开发的命令行参数解析库。目标是支持大多数 POSIX/GNU 程序参数语法约定

该项目处于开发中,库 API 不稳定。请参阅开发者文档 https://docs.rs/commandlines

当前支持的 POSIX/GNU 参数语法约定

可用

  • 以连字符分隔符开头的参数被视为选项(-
  • 选项名称是单个字母数字字符
  • 选项通常在其他非选项参数之前
  • 参数 -- 结束所有选项;任何后续参数都视为非选项参数,即使它们以连字符开头
  • 选项可以按任何顺序提供,或出现多次。解释留给特定的应用程序程序
  • 长选项由 -- 后跟由字母数字字符和连字符组成的名称组成。选项名称通常是 1 到 3 个单词长,用连字符分隔单词
  • 要指定长选项的参数,请写 'name=value'。此语法允许长选项接受可选的参数
  • 某些选项需要参数。例如,ld 命令的 '-o' 命令需要一个参数——输出文件名
  • 由单个连字符字符组成的标记被解释为普通非选项参数。按照惯例,它用于指定从标准输入读取或向标准输出流写入
  • 如果选项不需要参数,则可以在单个标记中跟多个选项。因此,-abc 等同于 -a -b -c

尚未可用

  • 一个选项及其参数可以或不可以作为单独的标记出现。(换句话说,分隔它们的空白是可选的。)因此,‘-o foo’和‘-ofoo’是等效的。

无运行时依赖