许多手册页和--help
选项使用一种格式来描述记录的实用程序的命令行选项。例如,对于cd
shell命令:
cd [-L | -P] [directory]
cd -
我想解析这些描述。是否有模型或正式格式(即使它没有被广泛接受)?
我已经看到至少python的argparse
(http://pymotw.com/2/argparse/)可以产生类似的东西。
答案 0 :(得分:1)
有关SYNOPSIS部分使用的符号的一些细节可以在man manual中找到:
以下约定适用于SYNOPSIS部分,可用作指南 其他部分。
bold text type exactly as shown. italic text replace with appropriate argument. [-abc] any or all arguments within [ ] are optional. -a|-b options delimited by | cannot be used together. argument ... argument is repeatable. [expression] ... entire expression within [ ] is repeatable.
精确渲染可能因输出设备而异。例如,男人会 通常在终端中运行时无法呈现斜体,通常也是如此 使用带下划线或彩色的文字。
命令或功能图示是一种应该匹配所有可能的模式 调用。在某些情况下,建议说明几个独家 调用,如本手册页的“概要”部分所示。
POSIX Utility Syntax Guidelines中还有详细信息。
许多解析命令行选项的库可以生成概要部分(例如,查看boost::program_options)。