命令行错误消息的“POSIX定义格式”是什么? 哪个标准?
在ruby-doc.org 页面上,我发现了以下关于命令行选项/参数解析(getopt库)的信息:
以POSIX定义的格式返回相应的错误消息。 如果没有发生错误,则返回nil。
什么是POSIX定义的命令行错误消息格式? 它是哪种POSIX标准?
编辑:
我必须澄清一下,在解析命令行参数/选项时,我对标准/推荐的错误消息感兴趣。
在下面的链接(答案)中,我发现只提到了getopt的这种错误格式:
"%s: illegal option -- %c\n", , "%s: option requires an argument -- %c\n", ,
一切都好吗?
它是IEEE Std 1003.1。 请参见errno.h
, 错误号 。 也称为POSIX.1-2008,以及早期版本(有关章节,年份等的更多详细信息,请参阅wiki )。
请注意,系统可能具有扩展的错误编号集以及与之关联的消息。 例如,Linux支持C99定义的错误号。 也可能存在特定于实现的错误。 这是Linux的errno.h
供参考。
因为您的问题是关于getopt()
函数,大概是,您正在寻找getopt()
函数的POSIX规范。 该规范getopts
实用程序来处理它可以生成的错误消息。 getopts
实用程序的基本原理部分描述了某些现有实现中的某些错误消息的格式,但并未强制要求它们。
您还应该查看实用程序约定规范,了解POSIX实用程序通常符合的规则。 (与惯例有偏差,通常是因为历史悠久的历史先例。通常会定义一个与POSIX约定相匹配的变体。)