1. Commandes de base
A.EL MAMOUN Administration d’un système Linux
Chapitre 2 : Introduction au Shell bash
Page 1
A. EL MAMOUN– Octobre 2009
2. Commandes de base
A.EL MAMOUN Administration d’un système Linux
Chapitre 2 : Introduction au Shell bash
Page 2
Le Shell (« coquille ») est un programme qui fournit une interface
en mode texte
C'est à la fois...
Un interpréteur de commandes (un programme qui boucle en attente
des commandes utilisateur)
Un langage de programmation (interprété) offrant les structures de base comme
tout autre langage
Sous Linux, le shell est un programme au même titre qu'un autre.
On peut donc changer de shell si besoin.
3. Commandes de base
A.EL MAMOUN Administration d’un système Linux
Chapitre 2 : Introduction au Shell bash
Page 3
Plus Puissant qu’une GUI : Nombreuses actions impossibles à réaliser en
GUI
Plus pratique : Permet l’automatisation, de nombreux raccourcis clavier,
complétion…
Plus accessible – peu de ressources (mémoire, cpu)
Programmation simple des actions
4. Commandes de base
A.EL MAMOUN Administration d’un système Linux
Chapitre 2 : Introduction au Shell bash
Page 4
Shell de Stephen Bourne
Bourne shell (sh)
• L’historique
Bourne-Again shell (bash)
• Le Shell GNU
Shell de David Korn
Korn shell (ksh)
Csh : C shell
tcsh (version moderne du csh
• Syntaxe très proche du langage C
Zch : Z Shell
Reprenant les fonctions les plus
pratiques de bash, ksh et tcsh
• Correction orthographique
5. Commandes de base
A.EL MAMOUN Administration d’un système Linux
Chapitre 2 : Introduction au Shell bash
Page 5
En mode terminal, pas de GUI démarrée :
Se loguer , le Shell est exécuté
Les consoles virtuelles : ALT + Fx
En mode GUI :
Lancer un émulateur de terminal
Gnome terminal, xterm, …
6. Commandes de base
A.EL MAMOUN Administration d’un système Linux
Chapitre 2 : Introduction au Shell bash
Page 6
Le prompt ou l’invite de commande
Lors de la connexion ou le lancement d’un émulateur de terminal, le prompt
apparait :
• Le prompt $ pour un utilisateur et # pour root.
Nom_utilisateur@machine ~ $
root@machine ~ #
• Modifier l’invite de commande
Nom_utilisateur@machine ~ $ echo $PS1
Nom_utilisateur@machine ~ $ PS1= [u@h W A] :$
u : nom de l'utilisateur.
h : nom de la machine.
W : nom du dossier courant.
A : heure format 24h
7. Commandes de base
A.EL MAMOUN Administration d’un système Linux
Chapitre 2 : Introduction au Shell bash
Page 7
La syntaxe d'une commande bash
[ user@machine ~ ] $ nom_cmd [ option ... ] [ argument ... ]
nom_cmd : le nom de la commande
Option : Les options pour la commandes
Argument : paramètres de la commande (fichier, répertoire)
L’espace : Séparateur de champs, sépare les éléments
8. Commandes de base
A.EL MAMOUN Administration d’un système Linux
Chapitre 2 : Introduction au Shell bash
Page 8
Le fichier .bash_history conserve les 1000 dernières commandes
La commande history (history 10 : les 10 dernières commandes)
Les flèches : HAUT et BAS pour se promener dans l’historique
Rechercher dans l’historique avec CTRL+R (minuscule) + une chaîne
de caractère
9. Commandes de base
A.EL MAMOUN Administration d’un système Linux
Chapitre 2 : Introduction au Shell bash
Page 9
Avec la touche TAB
Le Shell complète les noms de fichiers
Il complète les noms de commandes
Peut être modifié pour compléter les options !!
yum install bash-completion
Extrêmement utile, uniquement options GNU
10. Commandes de base
A.EL MAMOUN Administration d’un système Linux
Chapitre 2 : Introduction au Shell bash
Page 10
Ctrl+a Place le curseur en début de ligne
Ctrl+e Place le curseur en fin de ligne
Alt+f Sauter de mot en mot en avant
Alt+b Sauter de mot en mot en arrière
ESC+. Insère le dernier argument de la commande précédente
Ctrl+_ Annuler la dernière modification
Ctrl+w Supprime le mot derrière le curseur
Ctrl+k Supprime tous les mots devant le curseur
Ctrl+x et Backspace Supprime tous les mots derrière le curseur
Ctrl+c Tue la commande en cours
Ctrl+r Effectue une recherche dans l’historique
Ctrl+d Quitter le Shell en cours (équivalent « exit »)
Ctrl+l Nettoyer son écran (équivalent « clear »)