Comment utiliser la boucle while en Bash
-
Syntaxe : Boucle
while
en Bash -
Exemple :
while
Boucle en Bash -
Exemple : Boucle infinie
while
en Bash -
Exemple :
while
Boucle en Bash avec déclarationbreak
-
Exemple :
while
Boucle 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