Aller au contenu
Administration Linux medium

Prise en main de Bash

12 min de lecture

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).

  • 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

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.

Une fois le terminal ouvert, vous voyez le prompt : c’est la ligne qui attend que vous tapiez quelque chose.

Le prompt par défaut de Bash ressemble à ceci :

bob@serveur:~$

Chaque partie a une signification :

ÉlémentSignification
bobNom de l’utilisateur connecté
@Séparateur
serveurNom de la machine (hostname)
:Séparateur
~Répertoire courant (~ = répertoire personnel, /home/bob)
$Vous êtes un utilisateur normal (# si vous êtes root)

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 :

Fenêtre de terminal
echo "$0"

Ou de façon plus détaillée :

Fenêtre de terminal
ps -p $$ -o comm=

Si le résultat est bash, vous êtes bien dans Bash.

Une commande est un mot que vous tapez, suivi éventuellement d’options et d’arguments, puis validé avec Entrée.

  1. Tapez whoami puis appuyez sur Entrée :

    Fenêtre de terminal
    whoami

    Le shell affiche votre nom d’utilisateur.

  2. Tapez pwd (print working directory) :

    Fenêtre de terminal
    pwd

    Le shell affiche le chemin complet du répertoire dans lequel vous vous trouvez.

  3. Tapez date :

    Fenêtre de terminal
    date

    Le 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).

Bash conserve les commandes que vous avez tapées. Vous n’avez pas besoin de tout retaper à chaque fois.

ActionTouche
Commande précédenteFlèche Haut
Commande suivanteFlèche Bas
Rechercher une commandeCtrl + R puis taper un mot
Afficher tout l’historiquehistory
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.

  1. Appuyez sur Ctrl + R. Le prompt change :

    (reverse-i-search)`':
  2. Tapez les premières lettres de la commande recherchée, par exemple who. Bash affiche la correspondance la plus récente.

  3. Appuyez sur Entrée pour exécuter, ou Ctrl + R encore pour remonter plus loin dans l’historique.

  4. Pour annuler la recherche, appuyez sur Ctrl + C.

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.

RaccourciAction
Ctrl + AAller au début de la ligne
Ctrl + EAller à la fin de la ligne
Alt + FAvancer d’un mot
Alt + BReculer d’un mot
RaccourciAction
Ctrl + USupprimer du curseur jusqu’au début de la ligne
Ctrl + KSupprimer du curseur jusqu’à la fin de la ligne
Ctrl + WSupprimer le mot avant le curseur
Alt + DSupprimer le mot après le curseur
Ctrl + YColler le texte supprimé (yank)
RaccourciAction
Ctrl + CInterrompre la commande en cours
Ctrl + DSur une ligne vide, envoie EOF et peut fermer le shell
Ctrl + LEffacer l’écran (équivaut à clear)
Ctrl + ZSuspendre la commande en cours (reprendre avec fg)

La touche Tab est le raccourci le plus important de Bash.

  1. Tapez cat /etc/host puis appuyez sur Tab :

    Bash complète en cat /etc/hostname (ou vous propose hosts et hostname si plusieurs fichiers correspondent).

  2. Appuyez deux fois sur Tab si rien ne se passe : Bash affiche toutes les possibilités.

  3. L’autocomplétion fonctionne aussi sur les commandes : tapez sys puis Tab Tab pour voir systemctl, sysctl, etc.

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é.

CodeSignification
0Succès
1Erreur générique
2Mauvais usage de la commande
126Commande trouvée mais non exécutable (permissions)
127Commande introuvable
130Interrompue par Ctrl + C

Pour consulter le code de retour de la dernière commande :

Fenêtre de terminal
echo $?

Exemple concret :

Fenêtre de terminal
ls /etc/hostname
echo $?
# 0 → le fichier existe, la commande a réussi
ls /fichier-inexistant
echo $?
# 2 → erreur, le fichier n'existe pas

Pour comprendre ce que Bash exécute quand vous tapez un mot, utilisez le builtin type :

Fenêtre de terminal
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/grep

type 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.

Pour un exécutable, utilisez man :

Fenêtre de terminal
man ls

Pour une primitive du shell (builtin), man n’a pas toujours de page. Utilisez plutôt help :

Fenêtre de terminal
help cd
help history
help type

help documente les commandes que Bash exécute directement, sans lancer de programme externe.

Maintenant que vous connaissez le prompt, l’historique et les raccourcis, voici quelques commandes pour vos premières explorations :

CommandeCe qu’elle fait
lsListe les fichiers du répertoire courant
ls -laListe avec fichiers cachés et détails
cd /var/logChange de répertoire
cdRetourne au répertoire personnel
cat /etc/os-releaseAffiche le contenu d’un fichier
head -5 /etc/passwdAffiche les 5 premières lignes
echo "Bonjour"Affiche un texte
uname -aInformations sur le noyau
uptimeDepuis combien de temps le système tourne
free -hMémoire disponible (format lisible)
df -hEspace disque par partition

Quand vous vous trompez, Bash affiche un message. Voici les erreurs les plus courantes au tout début :

Ce que vous tapezMessageCe qui s’est passé
Whoamicommand not foundLa casse est mauvaise
ls /dossier-inexistantNo such file or directoryLe chemin n’existe pas
cat /root/secretPermission deniedVous n’avez pas les droits
cd /etc/passwdNot a directoryC’est un fichier, pas un dossier
LScommand not foundLa casse est sensible sous Linux

Le terminal n’utilise pas les mêmes raccourcis que le reste du bureau.

ActionRaccourci
CopierCtrl + Shift + C
CollerCtrl + Shift + V

Mettez en pratique ce que vous venez de lire :

  1. Ouvrez un terminal.

  2. Vérifiez votre nom avec whoami.

  3. Affichez le répertoire courant avec pwd.

  4. Listez les fichiers avec ls.

  5. Consultez votre historique avec history.

  6. Rappeler une commande précédente avec Flèche Haut, puis validez.

  7. Interrompez une commande longue avec Ctrl + C (essayez sleep 60 puis Ctrl + C).

  8. Quittez le shell avec exit.

  • 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.
  • type identifie ce que Bash exécute ; help documente les builtins.
  • exit ferme proprement la session shell.

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens +700 guides gratuits, sans pub ni tracing. Aujourd'hui, ce site ne couvre même pas mes frais d'hébergement, d'électricité, de matériel, de logiciels, mais surtout de cafés.

Un soutien régulier, même symbolique, m'aide à garder ces ressources gratuites et à continuer de produire des guides de qualité. Merci pour votre appui.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn