« Script bash » : différence entre les versions
(Page créée avec « Category:Informatique Les scripts bash rendent bien service en permettant d'automatiser certaines tâches. Ils sont facile à prendre en main, mais il peut être intéressant de savoir comment les écrire proprement. <h1>Les paramètres</h1> Un script qui fait une tâche, c'est bien, mais un script capable de moduler son comportement en fonction des paramètres qu'on lui fournit, c'est mieux !! Voici le code minimal pour gérer les paramètres fournit : <p... ») |
Aucun résumé des modifications |
||
Ligne 5 : | Ligne 5 : | ||
Un script qui fait une tâche, c'est bien, mais un script capable de moduler son comportement en fonction des paramètres qu'on lui fournit, c'est mieux !! | Un script qui fait une tâche, c'est bien, mais un script capable de moduler son comportement en fonction des paramètres qu'on lui fournit, c'est mieux !! | ||
<h2>Globalement dans un script</h2> | |||
Voici le code minimal pour gérer les paramètres fournit : | Voici le code minimal pour gérer les paramètres fournit : | ||
Ligne 46 : | Ligne 47 : | ||
Quand la lettre est suivit du caractère ':', alors un paramètre sera attendu. | Quand la lettre est suivit du caractère ':', alors un paramètre sera attendu. | ||
<h2>Dans une fonction</h2> | |||
Si dans un script on appelle une fonction de la manière suivante : | |||
<pre style="color: silver; background: black;"> | |||
fonction parametre1 parametre2 | |||
</pre> | |||
Alors on pourra retrouver la valeur de ces paramètres dans les variables "$1" et "$2" respectivement. | |||
<h3>Exemple</h3> | |||
<pre style="color: silver; background: black;"> | |||
function fonction_affiche_parametre() | |||
{ | |||
echo $1 | |||
echo $2 | |||
} | |||
fonction_affiche_parametre "hello" "world" | |||
</pre> | |||
Ce script aura pour sortie : | |||
<pre style="color: silver; background: black;"> | |||
hello | |||
world | |||
</pre> |
Version du 29 janvier 2023 à 19:10
Les scripts bash rendent bien service en permettant d'automatiser certaines tâches. Ils sont facile à prendre en main, mais il peut être intéressant de savoir comment les écrire proprement.
Les paramètres
Un script qui fait une tâche, c'est bien, mais un script capable de moduler son comportement en fonction des paramètres qu'on lui fournit, c'est mieux !!
Globalement dans un script
Voici le code minimal pour gérer les paramètres fournit :
while getopts "a:b:cd" OPT do case "$OPT" in a) readonly VARIABLE1="${OPTARG}" ;; b) readonly VARIABLE2="${OPTARG}" ;; c) readonly VARIABLE3=true ;; d) readonly VARIABLE4=false ;; *) echo "parametres non valide" exit 1 ;; esac done
On pourra appeler un tel script de la manière suivante :
$ ./script.sh -a parametre1 -b parametre2 -c -d
C'est cette ligne qui va dicter si oui ou non un paramètre devra être fournit
while getopts "a:b:cd" OPT
Quand la lettre est suivit du caractère ':', alors un paramètre sera attendu.
Dans une fonction
Si dans un script on appelle une fonction de la manière suivante :
fonction parametre1 parametre2
Alors on pourra retrouver la valeur de ces paramètres dans les variables "$1" et "$2" respectivement.
Exemple
function fonction_affiche_parametre() { echo $1 echo $2 } fonction_affiche_parametre "hello" "world"
Ce script aura pour sortie :
hello world