Was sind die standard-Werte zurück für eine Befehlszeile-Anwendung?
-
21-09-2019 - |
Frage
Ich weiß, dass ein Programm für die Kommandozeile sollte 0 zurückgegeben werden, die auf Erfolg.Aber gibt es irgendwelche "Normen" für das, was die anderen Werte beziehen sich auf?z.B.Ungültige Argumente, etc.
Gibt es Unterschiede unter Windows und Unix?
Lösung
Ein Standardsatz von Fehlercodes und die entsprechenden Meldungen sind in errno.h. Systemaufrufe Rückgabewerte gegen diese verglichen werden können. Wenn Sie Ihr benutzerdefiniertes Programm schreiben, dann kann der Rückgabewert sein, was Sie wollen, es zu sein. die Rückgabewerte Handhabung wird völlig abhängig von Ihnen ab.
Andere Tipps
Du hast Recht, eine Rendite von 0 bedeutet normalerweise, Erfolg und jeder andere Wert ist ein Fehler.
Ich glaube nicht, dass es keine "Normen", für die anderen Werte.Zumindest ist es nicht weit verbreitet.Der übliche Weg ist, drucken Sie die Fehlermeldung auf der Standardfehlerausgabe und die Rückkehr eine eindeutige Fehler-id für jede Art von Fehler.Sie können dann dokumentieren Sie die Fehler-codes in der man-page oder sonstige Unterlagen dokumentieren.
windows scheint dieselbe Methode verwenden.zB
mkdir
Rückkehr 1 und print ~ 'falsche syntax in'mkdir C:\alreay\existing\directory
Rückgabe auch 1-und print - ~ 'Verzeichnis oder die Datei existiert bereits'
Hinweis:Nachricht werden nicht genau (übersetzt aus dem französischen)