Scripts Bash

État : {traduc}

Retour au document principal

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

  1. Question1 : _

  2. Question2 : _

Voir les réponses

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

  1. 1ere étape
  2. 2e étape

Réponses aux questions

  1. oui ou non

  2. oui ou non

Page consultée 108 fois