Do-While-Schleife in der Bash emulieren
-
Grundlegende Syntax der
do-while
-Schleife in Bash -
Die
break
-Anweisung in Bash -
Die
continue
-Anweisung in Bash
Looping ist eine grundlegende Idee in der Programmierung, die bei Multitasking-Aufgaben ziemlich nützlich sein wird. Wir können zahlreiche Funktionen wie for
, while
und until
verwenden, um Bash-Skripte zu durchlaufen.
In dieser Lektion werden wir durchgehen, wie man die do-while
-Schleife in Bash verwendet.
Grundlegende Syntax der do-while
-Schleife in Bash
Die grundlegende Syntax für eine do-while
-Schleife ist wie folgt.
while [condition]
do
first command;
second command;
.
.
.
nth command;
done
Die Parameter einer while
-Schleife können beliebige boolesche Ausdrücke sein. Wenn die Bedingung niemals zu false
ausgewertet wird, wird die Schleife unendlich.
Drücken Sie Ctrl + C, um die Endlosschleife zu stoppen. Schauen wir uns ein Beispiel an:
#!/bin/bash
x=0
while [ $x -le 4 ]
do
echo "The value is $x"
((x++))
done
Der aktuelle Wert der Variablen wird ausgegeben und im Beispiel bei jeder Iteration um eins erhöht. Der Anfangswert der Variable $x
ist 0
.
Das obige Skript wird ausgeführt, bis die vierte Zeile erreicht ist. Das Suffix -le
bedeutet kleiner oder gleich.
Ausgabe:
The value is 0
The value is 1
The value is 2
The value is 3
The value is 4
Die break
-Anweisung in Bash
Wir verwenden eine break
-Anweisung innerhalb der Schleife, um die Schleife zu beenden, wenn eine Bedingung erfüllt ist.
Beispielsweise endet die Schleife im folgenden Skript nach der neunten Iteration. Wir können jedoch die Schleife bei der vierten Iteration anhalten, indem wir die Anweisungen break
und if
verwenden.
#!/bin/bash
x=0
while [ $x -le 9 ]
do
echo "The value is $x"
((x++))
if [[ "$x" == '4' ]];
then
break
fi
done
Ausgabe:
The value is 0
The value is 1
The value is 2
The value is 3
Die continue
-Anweisung in Bash
Die continue
-Anweisung beendet den aktuellen Schleifendurchlauf und übergibt die Programmsteuerung an den nächsten Durchlauf.
Schauen wir uns ein Beispiel an. Wenn das aktuelle iterierte Element gleich 3
ist, bewirkt die continue
-Anweisung, dass die Ausführung zum Anfang der Schleife zurückkehrt und mit der nächsten Iteration fortfährt.
#!/bin/bash
x=0
while [ $x -le 5 ]
do
((x++))
if [[ "$x" == '3' ]];
then
continue
fi
echo "The value is $x"
done
Ausgabe:
The value is 1
The value is 2
The value is 4
The value is 5
The value is 6
Wie in der obigen Ausgabe erwartet, wenn $x
gleich 3
war, wurde die Iteration übersprungen und mit der nächsten fortgefahren.