是否有任何标准/文档告诉我如何生成如此好的帮助消息?

是否有任何标准/文档告诉我如何生成如此好的帮助消息?

这是一个后续上一个问题,其中 Silverrocker 建议了一种显示帮助消息的好方法,类似于ls或 之类的命令du

program --help

Usage: program [<options>][<arguments> ...]

Options:
--help         show this message, then exit
--something    after some spaces for alignment, an explenation follows.

我真的很喜欢这种方法,但我只能猜测如何生成这样的帮助消息。有没有关于如何生成这样的东西的 GNU/任何文档/标准?

答案1

在 ls 和 du 中,--help 输出简单明了地硬编码到程序中。

在 Python 等脚本语言中,可能有一个选项解析库可以自动为您完成此操作。

至于标准,我唯一能找到的是:

http://www.gnu.org/prep/standards/html_node/_002d_002dhelp.html#g_t_002d_002dhelp

或者更具体地说 ls, du (coreutils):

http://www.gnu.org/software/coreutils/manual/html_node/Common-options.html#Common-options

这是完全没有帮助的。

我想这取决于你是否能很好地格式化它。 :)

答案2

在编写命令行实用程序时,我创建一个usage()以该形式输出信息的函数,当我在 getopt (或其他)代码中添加或更改某些内容时,我会更新使用函数以反映这一点。当然,该系统的问题是,如果您懒惰,最终可能会收到不准确的使用消息,但这并不是一个难以避免或纠正的问题。

至于指南,原则“usage:”行可以遵循手册页约定,例如:

Usage: mycommand -h | [-x|y|z] [-a] [-b arg] required_param [optional_param]

哪里有管子|表示或者(因此您可以使用 x 或 y 或 z 之一)和括号可选位。根据 ls,这可能会被简化为

Usage: mycommand [options] required_param [optional_param]

然后按字母顺序浏览选项等。

-h如果解析或使用了无用的选项--help、缺少必需的参数等,则会触发“Usage”。

相关内容