2012-06-02 50 views
9

在ruby-doc.org page 我發現有關命令行選項/參數解析(getopt的庫)執行以下操作:命令行錯誤消息的「POSIX定義格式」是什麼?哪個標準?

返回在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> 

這一切是它?

回答

3

IEEE Std 1003.1是。請參閱errno.hError Numbers。也被稱爲POSIX.1-2008及更早版本(有關章節,年份等的更多詳細信息,請參閱wiki)。

請注意,系統可能具有擴展的錯誤編號和與其關聯的消息。例如,Linux支持由C99定義的錯誤號。也可能存在特定於實現的錯誤。這裏是Linux的errno.h供參考。

1

由於您的問題是關於getopt()函數,可能您正在尋找getopt()函數的POSIX規範。該規範針對其可產生的錯誤消息而推遲到getopts實用程序。 getopts實用程序的基本原理部分描述了某些現有實現中某些錯誤消息的格式,但未強制執行它們。

你也應該看看Utility Conventions規範的規則,POSIX實用程序通常符合。 (與慣例有偏差,通常是因爲歷史悠久的先例,通常有一個與POSIX慣例相匹配的變體)