Le looping en Bash est une technique essentielle pour automatiser des tâches répétitives dans vos scripts. Que vous souhaitiez traiter des fichiers, exécuter des commandes à plusieurs reprises ou gérer des données en boucle, les structures de boucles en Bash sont indispensables. Cet article explore les différentes façons de créer des boucles dans vos scripts Bash, avec des exemples concrets et des conseils pratiques pour éviter les pièges courants.
Qu’est-ce qu’une boucle en Bash ? #
Une boucle en Bash permet d’exécuter un ensemble d’instructions plusieurs fois. Les types de boucles les plus utilisés sont :
- for : itère sur une liste d’éléments.
- while : continue tant qu’une condition est vraie.
- until : fonctionne jusqu’à ce qu’une condition soit vraie.
Exemple 1 : Boucle for
Voici un exemple simple d’une boucle for qui affiche les nombres de 1 à 5.
À lire Script Python : Top 10 Exemples Pratiques 2026
for i in {1..5}; do
echo "Nombre: $i"
done
Ce script affichera :
Nombre: 1
Nombre: 2
Nombre: 3
Nombre: 4
Nombre: 5
Exemple 2 : Boucle while
Une boucle while peut être utilisée pour traiter des fichiers ligne par ligne. Voici comment lire un fichier et afficher chaque ligne :
counter=1
while read line; do
echo "Ligne $counter: $line"
((counter++))
done < mon_fichier.txt
Si mon_fichier.txt contient trois lignes, le résultat sera :
Ligne 1: Contenu de la première ligne
Ligne 2: Contenu de la deuxième ligne
Ligne 3: Contenu de la troisième ligne
Utilisation avancée des boucles #
Les boucles peuvent être combinées avec d’autres commandes pour effectuer des tâches complexes. Par exemple, vous pouvez utiliser une boucle pour effectuer une opération sur tous les fichiers d’un répertoire.
À lire Code Combat : Apprendre Programmation Jeu 2026
Exemple : Calculer la taille totale des fichiers
Voici comment calculer la taille totale de tous les fichiers .txt dans un répertoire :
total_size=0
for file in *.txt; do
size=$(stat -c%s "$file")
total_size=$((total_size + size))
done
echo "Taille totale des fichiers .txt : $total_size octets"
Si vous avez trois fichiers .txt avec une taille totale de 3000 octets, l’affichage sera :
Taille totale des fichiers .txt : 3000 octets
Tableau récapitulatif des structures de boucle #
| Type de boucle | Syntaxe | Utilisation principale |
|---|---|---|
| for | for var in list; do ... |
Itérer sur une liste d’éléments |
| while | while [ condition ]; do ... |
Exécuter tant qu’une condition est vraie |
| until | until [ condition ]; do ... |
Exécuter jusqu’à ce qu’une condition soit vraie |
Piège à éviter #
Un piège courant lors de l’utilisation de boucles en Bash est l’oubli d’initialiser les variables utilisées dans la condition. Par exemple, dans une boucle while, si la variable n’est pas initialisée correctement, cela peut entraîner une boucle infinie. Assurez-vous toujours que votre condition va évoluer vers une valeur qui termine la boucle.
Action immédiate
Pour vous familiariser avec le looping en Bash, créez un script simple qui utilise au moins deux types de boucles. Par exemple, combinez une boucle for pour parcourir une liste et une boucle while pour lire un fichier. Testez-le et modifiez-le pour voir comment chaque changement affecte l’exécution.
À lire LDP : Protocole Réseau Guide Complet 2026
FAQ #
Qu’est-ce que le looping en Bash ?
Le looping en Bash fait référence à l’utilisation de structures comme for, while et until pour répéter des instructions dans un script.
Comment créer une boucle infinie en Bash ?
Une boucle infinie se crée avec un code comme ceci :
while true; do
echo "Cette ligne s'affiche indéfiniment."
done
Quels sont les avantages d’utiliser des boucles dans un script ?
Les boucles permettent d’automatiser des tâches répétitives, facilitent le traitement de listes ou de fichiers et réduisent le besoin de copier-coller du code.
Comment déboguer une boucle qui ne fonctionne pas ?
Ajoutez des instructions echo à différents endroits dans votre boucle pour afficher l’état des variables et comprendre pourquoi elle ne se termine pas comme prévu.
À lire Installation Docker Debian : Guide Complet 2026
Existe-t-il des alternatives aux boucles en Bash ?
Oui, vous pouvez utiliser d’autres structures comme les fonctions récursives ou même combiner plusieurs commandes via le pipeline.
Quelle est la meilleure pratique pour écrire des boucles efficaces ?
Utilisez toujours des conditions claires et évitez les opérations lourdes à l’intérieur des boucles. Préférez stocker les résultats intermédiaires plutôt que de recalculer plusieurs fois.