Modèle d`état des lieux d`entrée et de sortie

Nous examineront trois méthodes différentes pour vérifier l`état d`erreur et discuterons des avantages et des inconvénients de chaque approche. Donc, si vous avez besoin d`exécuter plusieurs commandes en raison de l`état d`une autre condition, il est préférable (et beaucoup plus clair) d`utiliser la norme si, alors, syntaxe Else. Chaque commande Linux renvoie un État lorsqu`il se termine normalement ou anormalement. Vous pouvez utiliser la valeur de l`état de sortie dans le script shell pour afficher un message d`erreur ou prendre une sorte d`action. Par exemple, si la commande tar échoue, elle retourne un code qui indique au script shell d`envoyer un e-mail à sysadmin. Quel est le sens de l`état de sortie 1 retourné par la commande Linux? Comme 127 l`état de sortie indique “commande introuvable”. Une seule commande peut être dans chaque partie. Cette méthode est pratique pour les scénarios de réussite/échec simples, mais si vous voulez vérifier l`état des commandes d`écho eux-mêmes, il est facile de devenir rapidement confus au sujet de qui & & et | | s`applique à quelle commande. Il est également très difficile à entretenir. Par conséquent, cette construction est uniquement recommandée pour le séquençage simple des commandes.

Si vous avez un problème de sortie ou d`entrée d`un étudiant de votre liste, entrez un problème sur l`outil de support d`OSSE (OST). Beaucoup–mais certainement pas tous–les outils de ligne de commande retournent le code de sortie 1 pour l`erreur de syntaxe, c.-à-d. vous aviez trop peu d`arguments ou une option non valide. Ceux-ci peuvent être utilisés dans un script shell pour modifier le flux d`exécution en fonction du succès ou de l`échec des commandes exécutées. Ceci a été brièvement introduit dans les variables-partie II. Ici, nous allons examiner plus en détail dans les interprétations disponibles des codes de sortie. Chaque année, tous les élèves de l`école publique et publique de district de Columbia doivent être inscrits dans une liste d`agences d`éducation locale (LEA) et quitter cette liste au moment du retrait. Selon LS man page-État de sortie est 0 si OK, 1 si des problèmes mineurs, 2 si grave problème. La seule convention générale est qu`un état de sortie zéro signifie le succès, alors que tout état de sortie non-zéro est un échec.

La réussite est traditionnellement représentée par la sortie 0; l`échec est normalement indiqué par un code de sortie non nul. Cette valeur peut indiquer différentes raisons d`échec. Par exemple, GNU grep renvoie 0 en cas de succès, 1 si aucune correspondance n`a été trouvée, et 2 pour d`autres erreurs (erreurs de syntaxe, fichiers d`entrée inexistants, etc.). J`ai visité http://linux.die.net/abs-guide/exitcodes.html page, est-ce que cela signifie que le statut de sortie 1 n`a pas une signification particulière spéciale? Beaucoup–mais, hélas, pas tous–les outils de ligne de commande ont une page manuelle. Par Convention, il devrait documenter les codes de sortie du programme, mais beaucoup ne le font pas. Comme troisième approche, nous allons examiner une méthode plus simple et plus cruelle. J`ai tendance à utiliser ce pour la construction de noyaux Linux-automatismes simples qui, si elles vont bien, devrait juste aller de l`avant avec elle, mais quand les choses vont mal, ont tendance à exiger de l`opérateur de faire quelque chose d`intelligent (c`est à dire, ce qu`un script ne peut pas faire!): mais en fait , Marcel a constaté que cela ne fonctionne pas correctement. La syntaxe d`un sous-shell est: OSSE suit un protocole d`inscription et de retrait qui répond aux exigences des règlements municipaux du district de Columbia, règle 5-A2101. Dans les versions antérieures, j`avais suggéré que vous pouvez utiliser un sous-shell pour exécuter plusieurs commandes selon que la commande CP a réussi ou échoué: est-ce qu`il exécute la partie Success (parce que CP a réussi, et puis-parce que/bin/false retourne l`échec, il a également exécute la partie Failure: le code de retour du sous-interpréteur est le code de retour de la commande finale (Command3 dans cet exemple).

Ce code de retour affectera la commande globale. Ainsi, la sortie de ce script: selon si oui ou non la commande CP a réussi. Regardez attentivement cela; la construction est si votre LEA nécessite l`accès à l`outil de support de l`OSSE, envoyez un courriel à Tonia Lovelace à [email protected]. Vous pouvez combiner le grep et si la commande dans une seule instruction comme suit: présence sur une liste permet deux appuis majeurs pour l`étudiant et le LEA: un script shell simple pour localiser le nom d`utilisateur (finduser.sh) comme une deuxième approche, nous pouvons ranger ce quelque peu en mettant le test dans une fonction distincte, au lieu de jonque le code avec beaucoup de tests 4-Line:]] > le & & et | | opérateurs sont l`équivalent de l`interpréteur de tests AND and OR.