Wie man while Loop in Bash verwendet
-
Die Syntax:
whileSchleife in Bash -
Beispiel:
whileSchleife in Bash -
Beispiel: Unendliche
while-Schleife in Bash -
Beispiel:
whileSchleife in Bash mitbreakAnweisung -
Beispiel:
while-Schleife in Bash mitcontinue-Anweisung
Die while-Schleife ist eine der am weitesten verbreiteten Schleifenstrukturen in fast jeder Programmiersprache. Sie wird verwendet, wenn wir nicht wissen, wie oft wir eine Schleife ausführen müssen. Wir können eine Bedingung für die while-Schleife angeben, und die Anweisungen in der Schleife werden ausgeführt, bis die Bedingung falsch wird.
Die Syntax: while Schleife in Bash
while [condition]
do
command-1
command-2
...
...
command-n
done
Hier stellt die condition die Bedingung dar, die jedes Mal überprüft werden muss, bevor Befehle in der Schleife ausgeführt werden. Wenn die condition wahr ist, führen wir die Anweisungen in der Schleife aus. Wenn die condition falsch ist, verlassen wir die Schleife. Die Anweisungen von command-1 bis command-n sind Anweisungen, die in einer Schleife ausgeführt werden, bis die condition falsch wird.
Beispiel: while Schleife in Bash
#!/bin/bash
num=5
while [ $num -ge 0 ]
do
echo $num
((num--))
done
Ausgabe:
5
4
3
2
1
0
Hier wird zunächst num auf 5 gesetzt. Wir geben weiterhin num im Terminal aus und dekrementieren num in einer Schleife um 1, solange der Wert von num größer oder gleich 0 ist.
Beispiel: Unendliche while-Schleife 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
Ausgabe:
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
Es ist eine unendliche while-Schleife, die This is an infinite while loop. Press <kbd>Ctrl</kbd>+<kbd>C</kbd> to exit out of the loop. alle 0,5 Sekunden. Um die Schleife zu verlassen, können Sie CTRL+C drücken.
Beispiel: while Schleife in Bash mit break Anweisung
#!/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
Ausgabe:
5
4
Exit out of loop due to break
Im obigen Programm wird num mit 5 initialisiert, die Schleife wird so lange ausgeführt, wie num größer oder gleich 0 ist, aber da wir eine break-Anweisung in der Schleife haben, wenn num 3 ist, verlassen wir die Schleife, wenn der Wert von num 3 wird.
Beispiel: while-Schleife in Bash mit continue-Anweisung
#!/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
Ausgabe:
5
4
Ignore a step due to continue
2
1
0
Im obigen Programm wird num mit 6 initialisiert. In der Schleife verringern wir num zunächst um 1 und geben dann den letzten Wert von num aus. Die Schleife wird so lange ausgeführt, wie der Wert von num größer oder gleich 1 ist. Wenn num zu 3 wird, gibt das Skript den Wert von num nicht aus, da wir die continue-Anweisung haben, wenn num gleich 3 ist.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn