2012-06-02 8 views
9

Su ruby-doc.org page ho trovato la seguente sulle opzioni della riga di comando/argomenti parsing (biblioteca getopt):Che cos'è il "formato definito da POSIX" per i messaggi di errore della riga di comando? Quale standard?

restituire il messaggio di errore appropriato in formato POSIX-definito. Se non si è verificato alcun errore, ritorna nil.

Qual è il formato definito da POSIX per i messaggi di errore della riga di comando? Quale standard POSIX è?

EDIT:

devo precisare che ero interessato a messaggi di errore standard/raccomandati quando l'analisi della riga di comando argomenti/opzioni.

Nei link sottostanti (risposte) ho trovato solo che citano questo formato di errore per getopt:

"%s: illegal option -- %c\n", <program name>, <option character> 

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

E 'tutto ad esso?

risposta

3

IEEE Std 1003,1 lo è. Vedi errno.h, Error Numbers. Conosciuto anche come POSIX.1-2008 e revisioni precedenti (vedere wiki per ulteriori dettagli su sezioni, anni, ecc.).

Si noti che è probabile che i sistemi abbiano serie estesa di numeri di errore e messaggi associati. Ad esempio, Linux supporta i numeri di errore definiti da C99. Potrebbero esserci anche errori specifici dell'implementazione. Ecco Linux errno.h come riferimento.

1

Poiché la domanda riguarda la funzione getopt(), presumibilmente, si sta cercando la specifica POSIX della funzione getopt(). Le specifiche per questo definiscono l'utilità getopts per i messaggi di errore che può produrre. La sezione razionale dell'utilità getopts descrive il formato di alcuni messaggi di errore in alcune implementazioni esistenti, ma non li impone.

Si dovrebbe anche guardare la specifica Utility Conventions per le regole a cui normalmente si conforma un'utilità POSIX. (Ci sono delle deviazioni dalle convenzioni, normalmente a causa di precedenti storici consolidati. Di solito c'è una variazione definita che corrisponde alle convenzioni POSIX.)

Problemi correlati