Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:programmation:shells:script-bash-etat-de-sorie-et-les-tests [13/04/2015 19:46] milou [Script bash : état de sortie et les tests] |
doc:programmation:shells:script-bash-etat-de-sorie-et-les-tests [19/10/2015 13:14] milou [État de sortie et les tests] |
||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
* Objet : Script bash : enchaînement de commandes et redirection | * Objet : Script bash : enchaînement de commandes et redirection | ||
- | * Niveau requis : {{tag>débutant}} | + | * Niveau requis : {{tag>débutant avisé}} |
* Commentaires : FIXME | * Commentaires : FIXME | ||
* Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) | ||
* Suivi : | * Suivi : | ||
- | * Création par [[user>Hypathie]] 18/03/2014 | + | * Création par [[user>Hypathie]] le 18/03/2014 |
- | * Testé par [[user>Hypathie]] le <Juin 2014> | + | * Testé par [[user>Hypathie]] le Juin 2014 |
* Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=92203#p92203 | Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | * Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=92203#p92203 | Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | ||
+ | |||
+ | |||
+ | Contributeurs, les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli ! | ||
------ | ------ | ||
**Nota : Les autres wiki :** | **Nota : Les autres wiki :** | ||
- | * [[atelier:chantier:debuter-avec-les-scripts-shell-bash]] | + | * [[doc:programmation:shells:debuter-avec-les-scripts-shell-bash]] |
- | * [[atelier:chantier:script-bash-variables-arguments-parametres|script-bash-variables-arguments-parametres]] | + | * [[doc:programmation:shells:script-bash-variables-arguments-parametres|script-bash-variables-arguments-parametres]] |
- | * [[atelier:chantier:script-bash-detail-sur-les-parametres-et-les-boucles|modification de variable et de paramètre]] | + | * [[doc:programmation:shells:script-bash-detail-sur-les-parametres-et-les-boucles|modification de variable et de paramètre]] |
- | * [[atelier:chantier:script-bash-enchainement-de-commandes-et-etat-de-sortie|script-bash-enchainement-de-commandes-et-etat-de-sortie]] | + | * [[doc:programmation:shells:script-bash-enchainement-de-commandes-et-etat-de-sortie|script-bash-enchainement-de-commandes-et-etat-de-sortie]] |
* ;-) | * ;-) | ||
* [[doc:programmation:bash:script:tableaux|script-bash-les-tableaux]] | * [[doc:programmation:bash:script:tableaux|script-bash-les-tableaux]] | ||
* [[doc:programmation:bash:script:fonction|script-bash-les-fonctions]] | * [[doc:programmation:bash:script:fonction|script-bash-les-fonctions]] | ||
- | Contributeurs, les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli ! | + | |
===== État de sortie et code de retour===== | ===== État de sortie et code de retour===== | ||
Ligne 38: | Ligne 41: | ||
echo $? | echo $? | ||
</code> | </code> | ||
- | <code> | + | <file config retour de la commande> |
127 | 127 | ||
- | </code> | + | </file> |
>On peut chercher dans les codes d'erreur de bash que ''127'' est le code de retour pour les commandes qui n'ont pas pu être trouvées. | >On peut chercher dans les codes d'erreur de bash que ''127'' est le code de retour pour les commandes qui n'ont pas pu être trouvées. | ||
Ligne 52: | Ligne 55: | ||
==== L'enchaînement conditionnel est fondé sur le code de retour==== | ==== L'enchaînement conditionnel est fondé sur le code de retour==== | ||
Parmi les opérateurs d'enchaînement de commandes ci-dessous :\\ | Parmi les opérateurs d'enchaînement de commandes ci-dessous :\\ | ||
- | (voir : [[atelier:chantier:bash-les-differents-caracteres-speciaux#les-operateurs-de-controle|les opérateurs de contrôle]]) | + | (voir : [[doc:programmation:shells:bash-les-differents-caracteres-speciaux#Les opérateurs de contrôle|les opérateurs de contrôle]]) |
<code> | <code> | ||
|| && ; <retour-chariot> | || && ; <retour-chariot> | ||
Ligne 82: | Ligne 85: | ||
Les opérateurs ''&&'' et ''||'' s'utilisent comme les opérateurs binaires.\\ | Les opérateurs ''&&'' et ''||'' s'utilisent comme les opérateurs binaires.\\ | ||
Avec eux eux, c'est soit ''0'' soit autre chose que ''0'', c'est-à-dire ''1'', ou encore soit vrai, soit faux.\\ | Avec eux eux, c'est soit ''0'' soit autre chose que ''0'', c'est-à-dire ''1'', ou encore soit vrai, soit faux.\\ | ||
- | Voir la liste des [[atelier:chantier:page-man-bash-iv-symboles-dans-les-calculs-mathematiques#operateurs-binaires|opérateurs binaires]] | + | Voir la liste des [[doc:programmation:shells:page-man-bash-iv-symboles-dans-les-calculs-mathematiques#operateurs-binaires|opérateurs binaires]] |
</note> | </note> | ||
Ligne 98: | Ligne 101: | ||
echo $? | echo $? | ||
</code> | </code> | ||
- | <code> | + | <file config retour de la commande> |
- | 0 | + | 0 |
- | </code> | + | </file> |
<code user> | <code user> | ||
Ligne 109: | Ligne 112: | ||
echo $? | echo $? | ||
</code> | </code> | ||
- | <code> | + | <file config retour de la commande> |
1 | 1 | ||
- | </code> | + | </file> |
==== Utiliser la commande exit ==== | ==== Utiliser la commande exit ==== | ||
Ligne 142: | Ligne 145: | ||
echo $? | echo $? | ||
</code> | </code> | ||
- | <code> | + | <file config retour de la commande> |
1 | 1 | ||
- | </code> | + | </file> |
==="exit" force à sortir du programme=== | ==="exit" force à sortir du programme=== | ||
Ligne 165: | Ligne 168: | ||
<code> | <code> | ||
bonjour ne correspond pas à coucou | bonjour ne correspond pas à coucou | ||
+ | 0 | ||
</code> | </code> | ||
Ligne 186: | Ligne 189: | ||
===Convention et sortie de programme par défaut=== | ===Convention et sortie de programme par défaut=== | ||
>Par convention on finit un script par ''exit 0'' | >Par convention on finit un script par ''exit 0'' | ||
+ | > | ||
>Si on ne finit pas par ''exit 0'', il s'exécute un ''exit $?'' par défaut, ce qui est équivalent à un ''exit'' (tout court). | >Si on ne finit pas par ''exit 0'', il s'exécute un ''exit $?'' par défaut, ce qui est équivalent à un ''exit'' (tout court). | ||
Ligne 205: | Ligne 209: | ||
echo $? | echo $? | ||
</code> | </code> | ||
- | <code> | + | <file config retour de la commande> |
13 | 13 | ||
- | </code> | + | </file> |
===== État de sortie et les tests===== | ===== État de sortie et les tests===== | ||
===À savoir :=== | ===À savoir :=== | ||
- | * [[atelier:chantier:la-page-man-bash-ii-les-operateurs-lexicographiques|les opérateurs lexicographiques]] et leur syntaxe | + | * [[doc:programmation:shells:la-page-man-bash-ii-les-operateurs-lexicographiques|les opérateurs lexicographiques]] et leur syntaxe |
- | * [[atelier:chantier:page-man-bash-iii-les-operateurs-de-comparaison-numerique|les opérateurs de comparaison numérique et leur syntaxe]] | + | * [[doc:programmation:shells:page-man-bash-iii-les-operateurs-de-comparaison-numerique|les opérateurs de comparaison numérique et leur syntaxe]] |
- | * La commande test ou les crochets :[[atelier:chantier:page-man-bash-iii-les-operateurs-de-comparaison-numerique#conclusion-sur-les-operateurs-lexicographiques-et-les-operateurs-de-comparaison-numerique]] | + | * La commande test ou les crochets :[[doc:programmation:shells:page-man-bash-iii-les-operateurs-de-comparaison-numerique#conclusion-sur-les-operateurs-lexicographiques-et-les-operateurs-de-comparaison-numerique]] |
<note tip> | <note tip> |