1. Startseite
  2. Bash Skript
  3. Die Grundlagen der Bash-Script until Schleife

Die Grundlagen der Bash-Script until Schleife

Schleifen sind eines der grundlegenden Konzepte in der Programmierung. Sie sind sehr nützlich, wenn du eine bestimmte Anzahl von Befehlen wiederholt ausführen möchtest, bis eine Bedingung erfüllt ist.

In Skriptsprachen wie Bash können Schleifen verwendet werden, um sich wiederholende Aufgaben zu automatisieren. Es gibt drei grundlegende Schleifenkonstrukte in Bash: die for-Schleife, die while-Schleife und die until-Schleife.

In diesem Tutorial lernst du die Grundlagen der until-Schleife in Bash.

Die until-Schleife in Bash

Die until-Schleife wird verwendet, um eine bestimmte Reihe von Befehlen solange auszuführen, bis eine Bedingung als wahr ausgewertet wird.

Die until-Schleife in Bash hat die folgende Syntax:

until [BEDINGUNG]
do
  [BEFEHLE]
done

Die Bedingung wird vor der Ausführung der Befehle überprüft. Wenn die Bedingung als falsch ausgewertet wird, werden die Befehle ausgeführt. Wenn die Bedingung jedoch als wahr ausgewertet wird, wird die Schleife beendet und die Programmkontrolle wird an den folgenden Befehl übergeben.

In diesem Beispiel gibt die Schleife bei jeder Iteration den aktuellen Wert der Variable Zähler aus und erhöht die Variable um eins:

#!/bin/bash

Zähler=0

until [ $Zähler -gt 5 ]
do
  echo Zähler: $Zähler
  ((Zähler++))
done

Die Schleife wird so lange durchlaufen, bis die Variable Zähler einen Wert größer als 5 hat. Das Skript gibt folgende Ausgabe aus:

Zähler: 0
Zähler: 1
Zähler: 2
Zähler: 3
Zähler: 4
Zähler: 5

Du kannst die Anweisungen break und continue verwenden, um die Ausführung der Schleife zu steuern.

Beispiel einer until-Schleife in Bash

Das folgende Skript kann nützlich sein, wenn dein Git-Host offline ist. Anstatt mehrmals manuell git pull auszuführen, bis der Host wieder online ist, kannst du das Skript einmal ausführen. Es wird versuchen, das Repository zu ziehen, bis es erfolgreich ist.

#!/bin/bash

until git pull /dev/null
do
    echo "Warten auf den Git-Host ..."
    sleep 1
done

echo "Das Git-Repository wurde erfolgreich gezogen."

Das Skript gibt „Warten auf den Git-Host …“ aus und wartet eine Sekunde, bis der Git-Host online ist. Sobald das Repository gezogen wurde, gibt es „Das Git-Repository wurde erfolgreich gezogen.“ aus.

Warten auf den Git-Host ...
Warten auf den Git-Host ...
Warten auf den Git-Host ...

Das Git-Repository wurde erfolgreich gezogen.

Zusammenfassung

Sowohl die while-Schleife als auch die until-Schleife sind sich sehr ähnlich. Der Hauptunterschied besteht darin, dass die while-Schleife solange iteriert, wie die Bedingung wahr ist, und die until-Schleife solange iteriert, wie die Bedingung falsch ist.

Wenn du Fragen oder Feedback hast, hinterlasse gerne einen Kommentar.

War dieser Beitrag hilfreich?

Verwandte Beiträge