Menu
Coddy logo textTech

While-Schleife

Teil des Abschnitts Grundlagen der Terminal-Journey von Coddy. Lektion 72 von 82.

Die for-Schleife ist großartig, wenn du genau weißt, welche Elemente du durchlaufen möchtest. Aber was ist, wenn du weiterlaufen möchtest, bis sich eine bestimmte Bedingung ändert? Hier kommt die while-Schleife ins Spiel.

Eine while-Schleife läuft weiter, solange ihre Bedingung wahr bleibt. Hier ist die Grundstruktur:

#!/bin/bash
count=1
while [ $count -le 5 ]; do
    echo "Count: $count"
    count=$((count + 1))
done

Dieses Skript gibt die Zahlen 1 bis 5 aus.

Die Schleife prüft, ob count kleiner oder gleich 5 ist. Wenn dies zutrifft, führt sie den Schleifenkörper aus, erhöht den Zähler mithilfe von $((...)) für arithmetische Berechnungen und prüft erneut.

Sobald count 6 erreicht, wird die Bedingung falsch und die Schleife stoppt.

While-Schleifen sind ideal, wenn du im Voraus nicht weißt, wie viele Iterationen du benötigst. Zum Beispiel könntest du so lange nach einer Eingabe fragen, bis der Benutzer „quit“ eingibt:

#!/bin/bash
input=""
while [ "$input" != "quit" ]; do
    read -p "Enter command (quit to exit): " input
    echo "You entered: $input"
done

Sei vorsichtig mit while-Schleifen. Wenn die Bedingung niemals falsch wird, läuft deine Schleife endlos.

Stelle immer sicher, dass sich innerhalb der Schleife schließlich etwas an der Bedingung ändert, zum Beispiel durch das Erhöhen eines Zählers oder das Aktualisieren einer Variable auf Grundlage der Benutzereingabe.

challenge icon

Aufgabe

Einfach

Erstelle ein Shell-Skript namens counter.sh, das eine while-Schleife verwendet, um die Zahlen von 1 bis 4 auszugeben.

Dein Skript sollte:

  1. Mit der Shebang-Zeile beginnen (#!/bin/bash)
  2. Eine Variable namens num mit dem Anfangswert 1 erstellen
  3. Eine while-Schleife verwenden, die fortgesetzt wird, solange num kleiner oder gleich 4 ist
  4. Innerhalb der Schleife die aktuelle Zahl im Format Number: [num] ausgeben
  5. num nach jeder Iteration mithilfe von $((num + 1)) um 1 erhöhen

Mach das Skript ausführbar und führe es aus. Deine Ausgabe sollte folgendermaßen aussehen:

Number: 1
Number: 2
Number: 3
Number: 4

Hinweis: Verwende -le für den Vergleich „kleiner oder gleich“. Denke daran, den Zähler innerhalb der Schleife mit num=$((num + 1)) zu erhöhen, um eine Endlosschleife zu vermeiden. Beende deine while-Schleife mit done.

Probier es selbst

Terminal
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen

Übe selbstständig: Terminal-Playground