exit
v1.1.0
os . Exit ( exit . Forbidden ) // The user isn't permitted to perform this action
os . Exit ( exit . Unavailable ) // An API this program consumes isn't available
use semantic_exit :: { exit , Code } ;
exit ( Code :: Forbidden ) ;
exit ( Code :: Unavailable ) ;
import exit
exit . Code . Forbidden . exit ()
exit . Code . Unavailable . exit ()
Voir la liste complète des codes de sortie.
Conventionnellement, la sortie d'un programme avec zéro indique le succès tandis que non Zero indique une défaillance.
os . Exit ( 0 ) // success
os . Exit ( 1 ) // failure
Mais la exit
d'appel système accepte des valeurs entre 0 et 255, laissant 254 façons différentes d'exprimer l'échec.
Les objectifs de cette bibliothèque sont de définir les codes de sortie qui sont:
Il définit les codes dans deux gammes non réservées: 80-99 pour les erreurs de l'utilisateur et 100-119 pour les erreurs logicielles ou système.
Code de sortie | Nom | Signification |
---|---|---|
0 | OK | Le programme est sorti avec succès. |
1 | NotOK | Le programme est sorti sans succès mais ne donne aucun contexte supplémentaire sur l'échec. |
80 | UsageError | Le programme est sorti sans succès car il a été utilisé de manière incorrecte. (Par exemple, un argument requis a été omis ou une valeur non valide a été fournie pour un drapeau.) |
81 | UnknownSubcommand | Le programme est sorti sans succès parce qu'une sous-commande non reconnue a été invoquée. (Utilisé par CLI Multi-Tools.) |
82 | RequirementNotMet | Le programme est sorti sans succès parce qu'une condition préalable à celle-ci n'a pas été satisfaite. |
83 | Forbidden | Le programme est sorti sans succès car l'utilisateur n'est pas autorisé à effectuer l'action demandée. |
84 | MovedPermanently | Le programme est sorti sans succès car il a été migré vers un nouvel emplacement. |
100 | InternalError | Le programme est sorti sans succès en raison d'un problème dans son propre code. (Utilisé à la place de 1 lorsque le problème est connu pour être avec le code ou les dépendances du programme.) |
101 | Unavailable | Le programme est sorti sans succès car un service dont il dépend n'était pas disponible. (Par exemple, un démon local ou à distance n'a pas répondu, une connexion a été fermée de façon inattendue, un service HTTP a répondu avec 503.) |
Ctrl
C
+ la valeur SIGINT
du signal. 130.)sysexits.h
ont été initialement définis pour sendmail
mais ont été utilisés depuis. (Comparez les codes de sortie sémantique à Sysexits.h codes)