Dans tout shell qui se respecte, on trouve des variables. Il y a les variables dédiées au système ou à certains logiciels, qui en permettent la configuration au vol. Pour voir ce qu'il existe déjà comme variables vous pouvez taper la commande set sans argument, pour une meilleure visibilité une re-direction dans un fichier ou un ”pager” est conseillée (p.ex. 'set | less').
L'assignement prend la forme suivante:
NOM=valeur_de_la_variable
La valeur est récupérée en utilisant le nom de la variable précédé par un '$'. Ainsi donnera
echo $NOM valeur_de_la_variable
A noter que cet assignement de variable n'est valide que dans l'environnement dans lequel la variable a été définie. Ainsi une variable définie dans un shell script sera valide dans l'ensemble de celui-ci, mais pas à l'extérieur, de même chaque ligne que vous tapez sur le shell est un environnement séparé et clos.
Donc si vous voulez changer ou rajouter globalement une variable vous devrez l'exporter ' dans l'environnement, par exemple si vous voulez lire des 'News' et que votre machine ne connaît pas de serveur, ou que le serveur par défaut ne vous plaît pas vous taperez
export NNTPSERVER=news.u-strasbg.fr
Le fait de pouvoir mettre l'export sur la même ligne que l'assignement est une facilité bash et incompatible avec la sémantique sh. Dans la sémantique sh on déclare sa variable et sur une autre ligne on l'exporte.
Quelques variables intéressantes:
Le prompt est la chaîne de caractères qui apparaît à chaque nouvelle ligne et qui normalement se termine par un '$' ou un ''. Du style: 14:32:55 yoda: /tex$. Cette chaîne peut être mise au goût de l'utilisateur à travers la variable shell PS1. Par exemple pour avoir un prompt comme dans l'exemple ci-dessus, il faudrait rajouter dans son .bashrc une ligne du style
export PS1="\t \h:\w$ "
Pour un complément d'information en ce qui concerne les possibilitées offertes dans le prompt se référer à la man-page de bash dans la section ”PROMPTING”.