
Dans ce tutoriel, on va voir comment enchaîner et exécuter des commandes dans le terminal Linux en utilisant les opérateurs Bash &&, || et &.
Vous apprendrez à :
- exécuter une commande seulement si la précédente réussit avec
&&, - exécuter une commande si la précédente échoue avec
||, - lancer plusieurs commandes en parallèle avec
&.
À la fin de ce guide, vous saurez maîtriser ces opérateurs pour rendre vos scripts et votre utilisation du terminal plus efficaces et puissants.
Sommaire
Utiliser && en Bash pour exécuter une commande uniquement si la précédente réussit
L’opérateur && permet d’exécuter une commande uniquement si la commande précédente a réussi. C’est idéal pour enchaîner des commandes dépendantes les unes des autres.
Quelques exemples d’utilisations :
Mise à jour du système :
sudo apt update && sudo apt upgrade -yMise à jour de conteneurs utilisant un fichier docker-compose.yml :
sudo docker compose down && sudo docker compose pull && sudo docker compose up -dUtiliser || en Bash pour exécuter une commande uniquement si la précédente échoue
L’opérateur || permet d’exécuter une commande uniquement si la commande précédente a échoué. Il est utile pour gérer les erreurs directement dans le terminal ou vos scripts.
Exemples concret d’utilisation :
Vérifier si un dossier existe, sinon le créer :
[ -d /tmp/mon_dossier ] || mkdir /tmp/mon_dossierInstaller un paquet si la commande échoue :
command -v curl || sudo apt install curl -yAlerter en cas d’échec d’une commande :
cp fichier.txt /destination/ || echo "Erreur : impossible de copier fichier.txt"Lancer des commandes en parallèle dans le terminal Bash avec &
Le symbole & permet de lancer une commande en arrière-plan, c’est-à-dire de l’exécuter en parallèle avec d’autres commandes, sans bloquer le terminal.
3 exemples pratiques d’utilisation de & en Bash pour exécuter des commandes en parallèle au quotidien :
Lancer plusieurs téléchargements simultanément :
wget https://example.com/fichier1.zip &
wget https://example.com/fichier2.zip &
wget https://example.com/fichier3.zip &
waitL’ajout de
waità la fin permet d’attendre que tous les téléchargements soient terminés avant de continuer.
Exécuter plusieurs scripts de traitement en parallèle :
./script1.sh &
./script2.sh &
./script3.shLancer plusieurs pings en parallèle :
ping -c 4 google.com &
ping -c 4 cloudflare.com &
ping -c 4 yahoo.comBonus : Enchaîner plusieurs commandes en Bash avec ; sans condition
Le point-virgule ; permet d’exécuter plusieurs commandes consécutives sur une seule ligne, sans tenir compte de la réussite ou de l’échec de la commande précédente. C’est l’opérateur idéal pour enchaîner rapidement des commandes dans le terminal.
Exemples pratiques pour le ; en Bash :
Exécuter plusieurs commandes consécutives :
echo "Début du script" ; mkdir /tmp/test ; echo "Dossier créé"Les commandes s’exécutent dans l’ordre, même si
mkdiréchoue.
Mettre à jour le système et nettoyer ensuite :
sudo apt update ; sudo apt upgrade -y ; sudo apt autoremove -yAfficher plusieurs messages sur une seule ligne
echo "Bonjour" ; echo "Bienvenue sur le terminal" ; echo "Amusez-vous !"Conclusion
Dans ce tutoriel, nous avons vu comment enchaîner et exécuter des commandes dans le terminal Bash avec différents opérateurs :
&&: exécuter la commande suivante si la précédente réussit.||: exécuter la commande suivante si la précédente échoue.&: lancer une commande en parallèle en arrière-plan.;: enchaîner plusieurs commandes sans condition, toujours dans l’ordre.
Maîtriser ces opérateurs vous permet de rendre vos scripts et vos usages du terminal plus efficaces et flexibles, que ce soit pour automatiser des tâches, gérer des erreurs ou gagner du temps avec l’exécution parallèle.
Avec ces notions, vous êtes désormais capable de contrôler finement l’exécution de vos commandes en Bash et d’optimiser vos scripts Linux.
