命令行格式描述语言

时间:2014-12-10 14:51:39

标签: command-line command-line-interface

许多手册页和--help选项使用一种格式来描述记录的实用程序的命令行选项。例如,对于cd shell命令:

cd [-L | -P] [directory]
cd -

我想解析这些描述。是否有模型或正式格式(即使它没有被广泛接受)?

我已经看到至少python的argparsehttp://pymotw.com/2/argparse/)可以产生类似的东西。

1 个答案:

答案 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)。