Programmation Bash/Fonctions
Comme pour tout autre langage, l'utilisation de fonctions facilite le développement de scripts et la structuration de ceux-ci.
Déclaration.
Pour déclarer une fonction, il existe différentes méthodes, nous pouvons toujours utilise la syntaxe suivante malgré le fait qu'elle soit déprécié :
function maFonction()
 instructions
La déclaration d'une fonction doit toujours se situer avant son appel.
Le mot-clé codice_1 est optionnel :
maFonction()
 instructions
Les deux syntaxes ont leur avantage :
Appel et paramètres.
Appel.
Pour appeler une fonction, on utilise la syntaxe suivante:
maFonction param_1 param_2 ... param_n
Paramètres passés à la fonction.
Ces paramètres sont bien sûrs optionnels. À l'intérieur de la fonction, ils sont représentés, respectivement, par les variables $1, $2... , $n.
$0 représente toujours le nom du script (et non de la fonction) qui s'exécute.
Le nombre de paramètres passés à une fonction est représenté par la variable codice_2
Exemple:
function maFonction() 
 echo "$varlocal"
 echo "Nombres de paramètres : $#"
 echo $1
 echo $2
maFonction "Hello" "World!"
Ce qui donne le résultat suivant:
Fin.
Une fonction termine son exécution lorsqu'elle n'a plus d'instructions à exécuter ou lorsqu'elle rencontre l'instruction codice_3 ou codice_4. Ces instructions peuvent être suivies d'un entier positif, qui correspond à la valeur de retour de la fonction.
Si aucune valeur n'est spécifiée, c'est la valeur 0 qui est renvoyée.
La valeur de retour de la dernière fonction appelée est stockée dans la variable codice_5
Variables.
Outre les paramètres, une fonction peut utiliser plusieurs variables:
Pour éviter d'accéder en lecture à une variable n'ayant pas d'existence, on peut inscrire la commande set -u en début de script.