Sous Linux, il existe 2 environnements :
-
l’environnement console
-
l’environnement graphique
On a tendance à utiliser l’environnement graphique, qui est plus intuitif. Cependant, la console est aussi très puissante et permet d’effectuer des actions habituellement difficiles à réaliser dans un environnement graphique.
Il existe plusieurs environnements console sous Linux: les shells
- sh : Bourne Shell. L’ancêtre de tous les shells.
- bash : Bourne Again Shell. Une amélioration du Bourne Shell, disponible par défaut sous Linux et Mac OS X.
- ksh : Korn Shell. Un shell puissant assez présent sur les Unix propriétaires, mais aussi disponible en version libre, compatible avec bash.
- csh : C Shell. Un shell utilisant une syntaxe proche du langage C.
- tcsh : Tenex C Shell. Amélioration du C Shell.
- zsh : Z Shell. Shell assez récent reprenant les meilleures idées de bash, ksh et tcsh.
Voici dans les grandes lignes comment ont évolué les Shells.
Chacun hérite de la plupart des fonctionnalités de son ancêtre (figure suivante).
sh reste toujours plus répandu que bash. En fait, vous pouvez être sûrs que tous les OS basés sur Unix possèdent sh, mais ils n’ont pas tous forcément bash.
Afin de se familiariser avec le Shell, il est important de connaitre les différents caractères spéciaux, les variables d’environnement, les scripts de démarrage ainsi que les différents paramètres « positionnels » et « spéciaux ».
Les caractères spéciaux:
– La redirection de fichier: >,>>,<,|
– Les jokers: *,?,[…]
– La protection des caractères spéciaux: ‘…’, »… »,\
– Le référencement de variable: $
– L’interprétation de commandes: ...
(anti quote)
– La séparation des commandes: saut_de_lignes, ;
– Début de commentaire: #
– Le répertoire courant: ~
Les variables d’environnement:
– HOME: Le répertorie de travail
– PATH: Les chemins des répertoires ou sont recherchés les commandes
– ENV: Le chemin d’un script déclenché pour toute instance de Shell
– PS1: Le prompt
– LANG: La langue
Les scripts de démarrage:
/etc/profile Script de démarrage à l’ensemble des utilisateurs
~/.bash_profile Script de démarrage spécifique d’un utilisateur
~/.profile Idem, mais standard (ISO). Pris en compte que si le .bash_profile n’existe pas.
$ENV Script déclenché pour toute instance de Shell y compris le Shell déconnexion
Notion de variable d’environnement:
set Affiche l’ensemble des variables
env Affiche uniquement les variables d’environnement
unset Détruit une variable
export Met une variable du Shell dans l’espace d’environnement
echo, printf Affichent un message, une variable
read Lecture d’une variable au clavier
Les paramètres:
$0 Le nom du script
$1,$2 Le 1er paramètre, le 2nd
$# Le nombre de paramètre
$*,$@ L’ensemble des paramètres


Laisser un commentaire