Do-While-Schleife in der Bash emulieren

Nilesh Katuwal 22 März 2022
  1. Grundlegende Syntax der do-while-Schleife in Bash
  2. Die break-Anweisung in Bash
  3. Die continue-Anweisung in Bash
Do-While-Schleife in der Bash emulieren

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.