Menu
CoddyTech

La boucle for

Fait partie de la section Fondamentaux du Journey Terminal de Coddy. Leçon 71 sur 82.

Parfois, tu dois répéter une action plusieurs fois. Au lieu d’écrire la même commande encore et encore, tu peux utiliser une boucle for pour parcourir une liste d’éléments et effectuer une action sur chacun d’eux.

Voici la structure de base d’une boucle for en Bash :

#!/bin/bash
for name in Alice Bob Charlie; do
    echo "Hello, $name!"
done

Ce script affiche un message de bienvenue pour chaque nom de la liste. La variable name prend tour à tour chaque valeur : d’abord "Alice", puis "Bob", puis "Charlie". Le mot-clé do marque le début du corps de la boucle, et done la termine.

Les boucles for sont particulièrement puissantes lorsqu’elles sont combinées à des caractères génériques. Tu peux parcourir tous les fichiers d’un répertoire :

#!/bin/bash
for file in *.txt; do
    echo "Processing $file"
done

Cela parcourt tous les fichiers .txt du répertoire actuel. À chaque itération, la variable file contient le nom du fichier actuel, ce qui te permet d’effectuer automatiquement des opérations sur chaque fichier.

À savoir : si le motif ne correspond à aucun fichier, Bash ne le développe pas. La boucle s’exécute alors une fois avec le texte littéral *.txt comme valeur, au lieu de ne pas s’exécuter du tout.

Tu peux également parcourir une plage de nombres à l’aide de l’expansion des accolades :

#!/bin/bash
for i in {1..5}; do
    echo "Number: $i"
done

Cela affiche les nombres de 1 à 5. Les boucles for réduisent les tâches répétitives à quelques lignes de code, ce qui rend tes scripts plus efficaces et plus faciles à maintenir.

challenge icon

Défi

Facile

Crée un script shell appelé countdown.sh qui utilise une boucle for pour afficher un compte à rebours de 5 à 1.

Ton script doit :

  1. Commencer par la ligne shebang (#!/bin/bash)
  2. Utiliser une boucle for avec l’expansion des accolades pour parcourir les nombres de 5 à 1
  3. Afficher chaque nombre sur sa propre ligne au format : Countdown: [number]

Rends le script exécutable et lance-le. Le résultat doit être :

Countdown: 5
Countdown: 4
Countdown: 3
Countdown: 2
Countdown: 1

Conseil : Utilise {5..1} pour créer une plage décroissante. Dans la boucle, utilise echo "Countdown: $i", où i est ta variable de boucle.

Essayez vous-même

Terminal
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux

Entraînez-vous par vous-même : Playground Terminal