Usa while Loop in Bash
-
Sintassi: cicli
while
in Bash -
Esempio: cicli
while
in Bash -
Esempio: bucle infinito
while
in Bash -
Esempio: cicli
while
in Bash con istruzionebreak
-
Esempio:
while
bucle in Bash con istruzionecontinue
Il cicli while
è una delle strutture di bucle più utilizzate in quasi tutti i linguaggi di programmazione. Viene utilizzato quando non sappiamo quante volte è necessario eseguire un bucle. Possiamo specificare una condizione per il bucle while e le istruzioni nel bucle vengono eseguite finché la condizione non diventa falsa.
Sintassi: cicli while
in Bash
while [condition]
do
command-1
command-2
...
...
command-n
done
Qui, la condition
rappresenta la condizione che deve essere controllata ogni volta prima di eseguire comandi nel bucle. Se la condition
è vera, eseguiamo le istruzioni nel bucle. Se la condition
è falsa, usciamo dal bucle. Le istruzioni da command-1
a command-n
sono istruzioni eseguite in un bucle fino a quando la condition
diventa falsa.
Esempio: cicli while
in Bash
#!/bin/bash
num=5
while [ $num -ge 0 ]
do
echo $num
((num--))
done
Produzione:
5
4
3
2
1
0
Qui, inizialmente, num
è impostato a 5. Continuiamo a stampare num
nel terminale e decrementare num
di 1 in un bucle finché il valore num
è maggiore o uguale a 0.
Esempio: bucle infinito while
in 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
Produzione:
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
È un bucle while infinito che stampa This is an infinite while loop. Press CTRL + C to exit out of the loop.
ogni 0,5 secondi. Per uscire dal bucle, possiamo premere CTRL+C.
Esempio: cicli while
in Bash con istruzione 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
Produzione:
5
4
Exit out of loop due to break
Nel programma precedente, num
è inizializzato come 5. Il bucle viene eseguito finché num
è maggiore o uguale a 0. Ma poiché abbiamo un’istruzione break
nel bucle quando num
è 3. Quindi, usciamo dal bucle quando il valore di num
diventa 3.
Esempio: while
bucle in Bash con istruzione 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
Produzione:
5
4
Ignore a step due to continue
2
1
0
Nel programma precedente, num
è inizializzato come 6. Nel bucle, prima diminuiamo num
di 1 e poi stampiamo l’ultimo valore num
. Il bucle viene eseguito fintanto che il valore num
è maggiore o uguale a 1. Quando num
diventa 3, lo script non stampa il valore di num
poiché abbiamo l’istruzione continue
quando num
è 3.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn