Scripts Bash
État :
Sommaire
Pré-requis
Objectifs
L'environnement bash
Variables
Quand vous tapez une commande au prompt la shell bash utilise la variable PATH pour trouver quel exécutable vous souhaitez lancer sur le système. Vous pouvez vérifier le contenu de PATH en utilisant la commande echo:
echo $PATH /usr/bin:/bin:/usr/sbin:/usr/X11R6/bin:/usr/local/bin:/sbin/:/usr/local/sbin/
En fait le shell a besoin de beaucoup de variables pour s'adapter à chaque environnement utilisateur. Par exemple PWD, HOME, TERM et DISPLAY sont de telles variables.
Pour initialiser et déclarer une variable, la syntaxe est la suivante:
VARIABLE=VALEUR
Rappelez vous de ne pas mettre d'espace autour du signe '='. Quand une variable est déclarée et initialisée, vous pouvez y faire référence en utilisant le symbole dollar devant:
echo $VARIABLE
Quand une session shell est démarrée, des fichiers de configuration sont lus et la plupart des variables sont définies.
Pour libérer une variable de sa valeur actuelle, utilisez unset.
Fichiers de configuration
On peut distinguer les fichiers de configuration qui sont lus au moment de la connexion et les fichiers de configuration qui sont lus à chaque nouvelle session bash.
Les fichiers de configuration à la connexion
Les fichiers qui sont lus à la connexion sont /etc/profile et ~/.bash_profile (bash cherchera aussi des fichiers alternatifs comme ~/.profile). Bash lira ensuite ses fichiers de configuration ~/.bashrc et (s'il existe) /etc/bashrc.
Les fichiers bashrc
Ces fichiers sont lus à chaque fois qu'une nouvelle session shell est lancée (comme un nouveau xterm). Ces fichiers sont /etc/bashrc et ~/.bashrc.
Les alias et fonctions peuvent être enregistrés dans le ~/.bashrc.
Syntaxe d'une fonction
nom-fonction () { commande1; commande2; }
Vous pouvez tester quels fichiers sont lus en ajoutant une ligne echo Profile au /etc/profile, puis taper:
bash Pas de profile lu, vous ne devriez rien voir. bash -login Cela force bash à se comporter comme un bash de connexion, le mot `Profile` devrait apparaître
Notez que chaque session bash héritera des variables globales de ses parents définies dans /etc/profile et ~/.bash_profile.
Essentiel du scripting
Résumé et exercices
Questions de révision
Oui ou Non
Question1 : _
Question2 : _
Glossaire
Terme |
Description |
Terme no1 |
sa description |
Fichiers
Fichier |
Description |
Fichier1 |
sa description |
Commandes
Commande |
Description (apropos) |
commande no1 |
sa description ou son apropos |
Travaux pratiques
- 1ere étape
- 2e étape
Réponses aux questions
oui ou non
oui ou non
Page consultée 461 fois