Bash est très répandu sur Linux et reste le shell de référence dans la plupart des guides d'administration. Ce guide vous fait passer de « je vois un écran noir » à « je tape des commandes, je me corrige vite et je comprends ce que le terminal me répond ». Aucune connaissance préalable n'est requise, seulement un accès à une machine Linux (physique, VM ou WSL).
Ce que vous allez apprendre
Section intitulée « Ce que vous allez apprendre »- Ouvrir un terminal et lire le prompt
- Taper, corriger et rappeler des commandes
- Utiliser les raccourcis clavier essentiels de Bash
- Comprendre les codes de retour et les messages d'erreur
- Savoir où se trouve une commande et consulter son aide
Ouvrir un terminal
Section intitulée « Ouvrir un terminal »Le terminal est l'application graphique qui héberge votre shell. Le shell est le programme qui interprète vos commandes.
Raccourci clavier : Ctrl + Alt + T. Vous pouvez aussi chercher « Terminal » dans les applications.
Raccourci clavier : Ctrl + Alt + T ou ouvrir Konsole depuis le menu.
Depuis un autre poste, connectez-vous à la machine :
ssh utilisateur@adresse-ipVous arrivez directement dans un shell Bash (si c'est le shell par défaut du compte).
Une fois le terminal ouvert, vous voyez le prompt : c'est la ligne qui attend que vous tapiez quelque chose.
Comprendre le prompt
Section intitulée « Comprendre le prompt »Le prompt par défaut de Bash ressemble à ceci :
bob@serveur:~$Chaque partie a une signification :
| Élément | Signification |
|---|---|
bob | Nom de l'utilisateur connecté |
@ | Séparateur |
serveur | Nom de la machine (hostname) |
: | Séparateur |
~ | Répertoire courant (~ = répertoire personnel, /home/bob) |
$ | Vous êtes un utilisateur normal (# si vous êtes root) |
Vérifier quel shell est actif
Section intitulée « Vérifier quel shell est actif »La variable $SHELL indique le shell de login configuré pour votre compte,
mais pas forcément celui en cours d'exécution. Pour vérifier le shell
réellement actif :
echo "$0"Ou de façon plus détaillée :
ps -p $$ -o comm=Si le résultat est bash, vous êtes bien dans Bash.
Taper sa première commande
Section intitulée « Taper sa première commande »Une commande est un mot que vous tapez, suivi éventuellement d'options et d'arguments, puis validé avec Entrée.
-
Tapez
whoamipuis appuyez sur Entrée :Fenêtre de terminal whoamiLe shell affiche votre nom d'utilisateur.
-
Tapez
pwd(print working directory) :Fenêtre de terminal pwdLe shell affiche le chemin complet du répertoire dans lequel vous vous trouvez.
-
Tapez
date:Fenêtre de terminal dateLe shell affiche la date et l'heure du système.
Chaque commande suit la même logique :
commande [options] [arguments]Par exemple, ls -l /etc appelle la commande ls, avec l'option -l (format
détaillé) et l'argument /etc (le répertoire à lister).
Naviguer dans l'historique
Section intitulée « Naviguer dans l'historique »Bash conserve les commandes que vous avez tapées. Vous n'avez pas besoin de tout retaper à chaque fois.
| Action | Touche |
|---|---|
| Commande précédente | Flèche Haut |
| Commande suivante | Flèche Bas |
| Rechercher une commande | Ctrl + R puis taper un mot |
| Afficher tout l'historique | history |
| Relancer la commande n° 42 | !42 |
| Relancer la dernière commande | !! |
Essayez : tapez quelques commandes (whoami, date, pwd), puis appuyez
plusieurs fois sur Flèche Haut pour les retrouver.
Recherche interactive avec Ctrl + R
Section intitulée « Recherche interactive avec Ctrl + R »-
Appuyez sur Ctrl + R. Le prompt change :
(reverse-i-search)`': -
Tapez les premières lettres de la commande recherchée, par exemple
who. Bash affiche la correspondance la plus récente. -
Appuyez sur Entrée pour exécuter, ou Ctrl + R encore pour remonter plus loin dans l'historique.
-
Pour annuler la recherche, appuyez sur Ctrl + C.
Raccourcis clavier essentiels
Section intitulée « Raccourcis clavier essentiels »Par défaut, Bash s'appuie sur Readline avec des raccourcis de type
Emacs. Ce comportement peut être personnalisé via ~/.inputrc, mais les
raccourcis ci-dessous fonctionnent dans la grande majorité des cas.
Se déplacer dans la ligne
Section intitulée « Se déplacer dans la ligne »| Raccourci | Action |
|---|---|
| Ctrl + A | Aller au début de la ligne |
| Ctrl + E | Aller à la fin de la ligne |
| Alt + F | Avancer d'un mot |
| Alt + B | Reculer d'un mot |
Supprimer et corriger
Section intitulée « Supprimer et corriger »| Raccourci | Action |
|---|---|
| Ctrl + U | Supprimer du curseur jusqu'au début de la ligne |
| Ctrl + K | Supprimer du curseur jusqu'à la fin de la ligne |
| Ctrl + W | Supprimer le mot avant le curseur |
| Alt + D | Supprimer le mot après le curseur |
| Ctrl + Y | Coller le texte supprimé (yank) |
Contrôle
Section intitulée « Contrôle »| Raccourci | Action |
|---|---|
| Ctrl + C | Interrompre la commande en cours |
| Ctrl + D | Sur une ligne vide, envoie EOF et peut fermer le shell |
| Ctrl + L | Effacer l'écran (équivaut à clear) |
| Ctrl + Z | Suspendre la commande en cours (reprendre avec fg) |
L'autocomplétion avec Tab
Section intitulée « L'autocomplétion avec Tab »La touche Tab est le raccourci le plus important de Bash.
-
Tapez
cat /etc/hostpuis appuyez sur Tab :Bash complète en
cat /etc/hostname(ou vous proposehostsethostnamesi plusieurs fichiers correspondent). -
Appuyez deux fois sur Tab si rien ne se passe : Bash affiche toutes les possibilités.
-
L'autocomplétion fonctionne aussi sur les commandes : tapez
syspuis Tab Tab pour voirsystemctl,sysctl, etc.
Comprendre les codes de retour
Section intitulée « Comprendre les codes de retour »Chaque commande se termine par un code de retour (exit code). C'est un nombre que le shell conserve et qui indique si la commande a réussi ou échoué.
| Code | Signification |
|---|---|
0 | Succès |
1 | Erreur générique |
2 | Mauvais usage de la commande |
126 | Commande trouvée mais non exécutable (permissions) |
127 | Commande introuvable |
130 | Interrompue par Ctrl + C |
Pour consulter le code de retour de la dernière commande :
echo $?Exemple concret :
ls /etc/hostnameecho $?# 0 → le fichier existe, la commande a réussi
ls /fichier-inexistantecho $?# 2 → erreur, le fichier n'existe pasSavoir où se trouve une commande
Section intitulée « Savoir où se trouve une commande »Pour comprendre ce que Bash exécute quand vous tapez un mot, utilisez le
builtin type :
type ls# ls est un alias pour « ls --color=auto »
type cd# cd est une primitive du shell
type -a grep# grep est /usr/bin/greptype vous dit si un mot est un alias, une primitive du shell
(builtin), une fonction ou un exécutable sur le disque. L'option -a
liste toutes les résolutions possibles.
Consulter l'aide d'une commande
Section intitulée « Consulter l'aide d'une commande »Pour un exécutable, utilisez man :
man lsPour une primitive du shell (builtin), man n'a pas toujours de page.
Utilisez plutôt help :
help cdhelp historyhelp typehelp documente les commandes que Bash exécute directement, sans lancer de
programme externe.
Quelques commandes pour explorer le système
Section intitulée « Quelques commandes pour explorer le système »Maintenant que vous connaissez le prompt, l'historique et les raccourcis, voici quelques commandes pour vos premières explorations :
| Commande | Ce qu'elle fait |
|---|---|
ls | Liste les fichiers du répertoire courant |
ls -la | Liste avec fichiers cachés et détails |
cd /var/log | Change de répertoire |
cd | Retourne au répertoire personnel |
cat /etc/os-release | Affiche le contenu d'un fichier |
head -5 /etc/passwd | Affiche les 5 premières lignes |
echo "Bonjour" | Affiche un texte |
uname -a | Informations sur le noyau |
uptime | Depuis combien de temps le système tourne |
free -h | Mémoire disponible (format lisible) |
df -h | Espace disque par partition |
Comprendre les premières erreurs
Section intitulée « Comprendre les premières erreurs »Quand vous vous trompez, Bash affiche un message. Voici les erreurs les plus courantes au tout début :
| Ce que vous tapez | Message | Ce qui s'est passé |
|---|---|---|
Whoami | command not found | La casse est mauvaise |
ls /dossier-inexistant | No such file or directory | Le chemin n'existe pas |
cat /root/secret | Permission denied | Vous n'avez pas les droits |
cd /etc/passwd | Not a directory | C'est un fichier, pas un dossier |
LS | command not found | La casse est sensible sous Linux |
Copier-coller dans le terminal
Section intitulée « Copier-coller dans le terminal »Le terminal n'utilise pas les mêmes raccourcis que le reste du bureau.
| Action | Raccourci |
|---|---|
| Copier | Ctrl + Shift + C |
| Coller | Ctrl + Shift + V |
Exercice rapide, 3 minutes
Section intitulée « Exercice rapide, 3 minutes »Mettez en pratique ce que vous venez de lire :
-
Ouvrez un terminal.
-
Vérifiez votre nom avec
whoami. -
Affichez le répertoire courant avec
pwd. -
Listez les fichiers avec
ls. -
Consultez votre historique avec
history. -
Rappeler une commande précédente avec Flèche Haut, puis validez.
-
Interrompez une commande longue avec Ctrl + C (essayez
sleep 60puis Ctrl + C). -
Quittez le shell avec
exit.
Contrôle de connaissances
Section intitulée « Contrôle de connaissances »Vérifiez que l'essentiel de ce guide est acquis. Les questions portent uniquement sur ce qui vient d'être expliqué ici.
Contrôle de connaissances
Validez vos connaissances avec ce quiz interactif
Informations
- Le chronomètre démarre au clic sur Démarrer
- Questions à choix multiples, vrai/faux et réponses courtes
- Vous pouvez naviguer entre les questions
- Les résultats détaillés sont affichés à la fin
Lance le quiz et démarre le chronomètre
Vérification
(0/0)Profil de compétences
Quoi faire maintenant
Ressources pour progresser
Des indices pour retenter votre chance ?
Nouveau quiz complet avec des questions aléatoires
Retravailler uniquement les questions ratées
Retour à la liste des certifications
À retenir
Section intitulée « À retenir »- Le prompt vous indique qui vous êtes, où vous êtes et si vous êtes root.
- Toute commande suit la forme
commande [options] [arguments]puis Entrée. - Tab complète les commandes et les chemins : utilisez-la systématiquement.
- Ctrl + R retrouve une commande passée en quelques frappes.
- Ctrl + C interrompt, Ctrl + L nettoie l'écran, Ctrl + A/E se déplace dans la ligne.
echo $?donne le code de retour : 0 = succès, autre chose = erreur.typeidentifie ce que Bash exécute ;helpdocumente les builtins.exitferme proprement la session shell.
Pour aller plus loin
Section intitulée « Pour aller plus loin »- Personnaliser Bash : Configurer .bashrc, le prompt, les alias, bash-it et fzf.