“POSIX定义的格式”是指命令行错误消息的格式?这个标准是哪个?

9
在ruby-doc.org 页面上,我找到了有关命令行选项/参数解析(getopt库)的以下内容:
返回符合POSIX定义格式的适当错误消息。如果没有发生错误,则返回nil。
什么是POSIX定义的命令行错误消息格式?这是哪个POSIX标准?
编辑:
我必须澄清,我对解析命令行参数/选项时的标准/推荐错误消息感兴趣。
在下面的链接(答案)中,我只发现了有关getopt的此错误格式的提及:
"%s: illegal option -- %c\n", <program name>, <option character>

"%s: option requires an argument -- %c\n", <program name>, <option character>

这就是全部吗?

2个回答

3
IEEE Std 1003.1中包含错误码。请参阅errno.hError Numbers。这也被称为POSIX.1-2008以及早期版本(有关章节、年份等的详细信息,请参见wiki)。
请注意,系统可能具有与其相关联的扩展错误码和消息集。例如,Linux支持由C99定义的错误码。还可能有特定于实现的错误。此处提供Linux的errno.h供参考。

1

由于您的问题涉及到getopt()函数,因此您可能正在寻找getopt()函数的POSIX规范。该规范将其推迟到getopts实用程序以获取其可以生成的错误消息。 getopts实用程序的基本原理部分描述了一些现有实现中某些错误消息的格式,但不强制执行它们。

您还应查看实用程序约定规范,以了解符合POSIX实用程序通常遵循的规则。(通常会有偏离惯例的变化,这是由于长期历史惯例。通常定义了与POSIX惯例相匹配的变体。)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接