Sommaire

Scripts shell

Un script Bash est un fichier texte contenant une suite de commandes telles que celles exécutées sur la ligne de commande.

Toute ligne de commande valide peut faire l’objet d’un script shell pour un traitement par lot (batch). Inversement, tout code écrit dans un script Bash peut être saisi directement sur la ligne de commande.

Dans cet exemple, le fichier script porte le nom prog.sh :

[nicolas]$ cat prog.sh 
date 
whoami 
var=12 
echo $var

1. Appel et exécution

Les modifications de l’environnement du shell appelant dépendent de la manière dont le script shell est appelé.

bash prog.sh

La première façon d’appeler un script shell consiste à lancer un nouveau bash avec le nom du script en argument. Ce nouveau shell traite alors les instructions contenues dans le fichier comme si elles avaient été saisies au clavier.

Il en résulte la création d’un sous-processus bash qui se termine automatiquement à la fin de l’exécution du script.

[nicolas]$ cat prog.sh 
date 
whoami 
var=12 
echo $var 
[nicolas]$ echo $var 
 
[nicolas]$ bash prog.sh 
dim. avril 1 16:01:06 CEST 2018 
nicolas 
12 
[nicolas]$ echo $var   

Toute modification de l’environnement - comme le changement de répertoire ou la définition de variables - n’intervient que sur le sous-shell créé temporairement. Il n’y a aucune modification ...