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-enchainement-de-commandes-et-etat-de-sortie [06/06/2014 08:27] Hypathie [Enchaînements de commandes dans les scripts] |
doc:programmation:shells:script-bash-enchainement-de-commandes-et-etat-de-sortie [07/06/2014 06:52] Hypathie [script bash : enchaînement de commandes et redirection] |
||
---|---|---|---|
Ligne 6: | Ligne 6: | ||
* Création par **Hypathie** 18/03/2014 | * Création par **Hypathie** 18/03/2014 | ||
* Testé par <Hypathie> le <Juin 2014> | * Testé par <Hypathie> le <Juin 2014> | ||
- | * Commentaires sur le forum : [[url | 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 !)) |
**Nota : wiki n°4**\\ | **Nota : wiki n°4**\\ | ||
Ligne 107: | Ligne 107: | ||
</code> | </code> | ||
Voir : [[http://abs.traduc.org/abs-fr/ch21.html|Guide avancé d'écriture des scripts Bash: 21. Sous-shells]] | Voir : [[http://abs.traduc.org/abs-fr/ch21.html|Guide avancé d'écriture des scripts Bash: 21. Sous-shells]] | ||
+ | |||
+ | <note tip> | ||
+ | On ne confondra plus ! | ||
+ | <code bash> | ||
+ | #!/bin/bash | ||
+ | { var1=yep ;} | ||
+ | echo $var1 | ||
+ | var3=coucou | ||
+ | { var4=yep ; $var4 ;} | ||
+ | echo $var3 | ||
+ | </code> | ||
+ | retour : | ||
+ | <code> | ||
+ | yep | ||
+ | essai.sh: ligne6: yep : commande introuvable | ||
+ | coucou | ||
+ | </code> | ||
+ | |||
+ | Mais : | ||
+ | <code bash> | ||
+ | #!/bin/bash | ||
+ | var1=coucou | ||
+ | (var2=yep ) | ||
+ | echo $var1 $var2 | ||
+ | ( var3="au revoir" ; echo $var3 ) | ||
+ | </code> | ||
+ | retour : | ||
+ | <code> | ||
+ | coucou | ||
+ | au revoir | ||
+ | </code> | ||
+ | </note> | ||
====Notion de sous-shell ==== | ====Notion de sous-shell ==== | ||
Ligne 114: | Ligne 146: | ||
===Le processus père ne peut pas récupérer les variables d'un processus fils=== | ===Le processus père ne peut pas récupérer les variables d'un processus fils=== | ||
- | [code bash] | + | |
+ | <code bash> | ||
#!/bin/bash | #!/bin/bash | ||
nom=nenette | nom=nenette | ||
( prenom=hypathie ) | ( prenom=hypathie ) | ||
echo $nom $prenom | echo $nom $prenom | ||
- | [/code] | + | </code> |
Retour : | Retour : | ||
Ligne 129: | Ligne 163: | ||
Il est possible de lancer deux processus en parallèle. | Il est possible de lancer deux processus en parallèle. | ||
- | [code bash] | + | <code bash> |
#!/bin/bash | #!/bin/bash | ||
( echo "bonjour" ) & ( echo "au revoir" ) | ( echo "bonjour" ) & ( echo "au revoir" ) | ||
Ligne 136: | Ligne 170: | ||
cd /etc/apt ; ls | cd /etc/apt ; ls | ||
cd /etc/calendar ; ls | cd /etc/calendar ; ls | ||
- | [/code] | + | </code> |
Comparez le retour. | Comparez le retour. | ||