87 个版本 (破坏性更新)

0.60.2 2024年3月26日
0.59.6 2023年10月11日
0.59.4 2023年1月27日
0.59.3 2022年11月23日
0.0.4 2018年5月15日

#246 in 命令行界面


13 crates 中使用

LGPL-3.0 或更新

120KB
1.5K SLoC

命令行解析器

项目

  • 许可证:GNU Lesser General Public License,版本 3,或(根据您的要求)任何更新版本。
  • 本项目遵循 语义版本控制 2.0.0

特性

  • 无债务。它是一个参数解析器,因此标准的 Rust 就足够了。
  • parse_file() 帮助解析存储在您文件中的参数。
  • docs 帮助为您程序生成文档。
  • 可选的 bin 功能提供了一个程序,该程序可以帮助您生成简单的 Rust 源代码模板。您可以使用 help 命令获取更多详细信息。

规范

程序参数可以是

  • 一个命令。
  • 一个参数。
  • 一个选项。
  • 一个特殊短语: --
  1. 命令

    • 命令可以是任何不以 --- 开头的命令。
  2. 参数

    • 与命令相同,参数可以是任何不以 --- 开头的命令。
  3. 选项

    选项以 --- 开头。

    • - 支持单个短格式选项。

    • -- 支持单个长格式选项。

    • 选项值可以是任何内容。

    • 选项的键和值可以由以下任意一种分隔

      • 等号 =
      • 或多个空格。
    • 布尔选项有两个值: truefalse。值是可选的。如果不存在,则默认为 true

  4. 特殊短语

    • -- 表示:程序应该将其后面的所有短语 作为 参数处理。这通常用于向子进程传递参数。
  5. 向程序传递参数

    必须采用以下形式

    program [command|arguments...|options...|-] [-- [arguments...]]
    

    其中

    • [] 表示可选。
    • ... 表示多个参数。

依赖项

~135KB