Menu
Coddy logo textTech

La boucle for

Fait partie de la section Les fondamentaux du Journey Terminal de Coddy — leçon 71 sur 82.

Parfois, vous devez répéter une action plusieurs fois. Au lieu d'écrire la même commande encore et encore, vous pouvez utiliser une boucle for pour parcourir une liste d'éléments et exécuter 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 une salutation pour chaque nom dans la liste. La variable name prend chaque valeur à son tour : d'abord "Alice", puis "Bob", puis "Charlie". Le mot-clé do marque le début du corps de la boucle, et done le termine.

Les boucles for sont particulièrement puissantes lorsqu'elles sont combinées avec des caractères génériques. Vous pouvez parcourir tous les fichiers d'un répertoire :

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

Cela parcourt chaque fichier .txt du répertoire courant. À chaque itération, la variable file contient le nom du fichier actuel, vous permettant d'effectuer automatiquement des opérations sur chaque fichier.

Vous pouvez également boucler sur une plage de nombres en utilisant l'expansion de accolades :

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

Cela affiche les nombres de 1 à 5. Les boucles for transforment les tâches répétitives en seulement quelques lignes de code, rendant vos scripts plus efficaces et plus faciles à maintenir.

challenge icon

Défi

Facile

Créez un script shell nommé countdown.sh qui utilise une boucle for pour afficher un décompte de 5 à 1.

Votre script doit :

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

Rendez le script exécutable et lancez-le. Votre sortie doit être :

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

Astuce : Utilisez {5..1} pour créer une plage décroissante. Dans la boucle, utilisez echo "Countdown: $i"i est votre 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 Les fondamentaux