Comment utiliser la boucle while en Bash
-
Syntaxe : Boucle
whileen Bash -
Exemple :
whileBoucle en Bash -
Exemple : Boucle infinie
whileen Bash -
Exemple :
whileBoucle en Bash avec déclarationbreak -
Exemple :
whileBoucle en Bash avec l’instructioncontinue
La boucle while est l’une des structures de boucle les plus utilisées dans presque tous les langages de programmation. Elle est utilisée lorsque nous ne connaissons pas le nombre de fois que nous devons exécuter une boucle. Nous pouvons spécifier une condition pour la boucle while, et les instructions dans la boucle sont exécutées jusqu’à ce que la condition devienne fausse.
Syntaxe : Boucle while en Bash
while [condition]
do
command-1
command-2
...
...
command-n
done
Ici, la condition représente l’état qui doit être vérifié à chaque fois avant d’exécuter des commandes dans la boucle. Si la condition est vraie, nous exécutons les instructions dans la boucle. Si la condition est fausse, nous sortons de la boucle. Les instructions de command-1 à command-n sont des instructions exécutées dans une boucle jusqu’à ce que la condition devienne fausse.
Exemple : while Boucle en Bash
#!/bin/bash
num=5
while [ $num -ge 0 ]
do
echo $num
((num--))
done
Production:
5
4
3
2
1
0
Ici, initialement, num est fixé à 5. Nous continuons à imprimer num dans le terminal et à décrémenter num de 1 dans une boucle aussi longtemps que la valeur num est supérieure ou égale à 0.
Exemple : Boucle infinie while en Bash
#!/bin/bash
while true
do
echo "This is an infinite while loop. Press CTRL + C to exit out of the loop."
sleep 0.5
done
Production:
This is an infinite while loop. Press CTRL + C to exit out of the loop.
This is an infinite while loop. Press CTRL + C to exit out of the loop.
This is an infinite while loop. Press CTRL + C to exit out of the loop.
^C
C’est une boucle infinie qui imprime This is an infinite while loop. Press CTRL + C to exit out of the loop. toutes les 0,5 secondes. Pour sortir de la boucle, nous pouvons appuyer sur CTRL+C.
Exemple : while Boucle en Bash avec déclaration break
#!/bin/bash
num=5
while [ $num -ge 0 ]
do
echo $num
((num--))
if [[ "$num" == '3' ]]; then
echo "Exit out of loop due to break"
break
fi
done
Production:
5
4
Exit out of loop due to break
Dans le programme ci-dessus, num est initialisé à 5. La boucle est exécutée tant que num est supérieur ou égal à 0. Mais comme nous avons une instruction break dans la boucle quand num est 3. Donc, nous sortons de la boucle quand la valeur de num devient 3.
Exemple : while Boucle en Bash avec l’instruction continue
#!/bin/bash
num=6
while [ $num -ge 1 ]
do
((num--))
if [[ "$num" == '3' ]]; then
echo "Ignore a step due to continue"
continue
fi
echo $num
done
Production:
5
4
Ignore a step due to continue
2
1
0
Dans le programme ci-dessus, num est initialisé à 6. Dans la boucle, nous diminuons d’abord num de 1, puis nous imprimons la dernière valeur num. La boucle est exécutée tant que la valeur num est supérieure ou égale à 1. Lorsque num devient 3, le script n’affiche pas la valeur de num car nous avons l’instruction continue lorsque num est 3.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn