Menu
Coddy logo textTech

For-Schleife

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

Manchmal müssen Sie eine Aktion mehrmals ausführen. Anstatt denselben Befehl immer wieder zu schreiben, können Sie eine for-Schleife verwenden, um durch eine Liste von Elementen zu iterieren und eine Aktion auf jedes auszuführen.

Hier ist die grundlegende Struktur einer for-Schleife in Bash:

#!/bin/bash
for name in Alice Bob Charlie; do
    echo "Hello, $name!"
done

Dieses Skript gibt für jeden Namen in der Liste eine Begrüßung aus. Die Variable name nimmt nacheinander jeden Wert an: zuerst "Alice", dann "Bob", dann "Charlie". Das do-Schlüsselwort markiert den Beginn des Schleifenrumpfs, und done beendet ihn.

For-Schleifen sind besonders leistungsstark, wenn sie mit Wildcards kombiniert werden. Man kann alle Dateien in einem Verzeichnis durchlaufen:

#!/bin/bash
for file in *.txt; do
    echo "Processing $file"
done

Dies iteriert durch jede .txt-Datei im aktuellen Verzeichnis. In jeder Iteration enthält die file-Variable den aktuellen Dateinamen, sodass Sie Operationen auf jeder Datei automatisch durchführen können.

Sie können auch mit der geschweiften Klammererweiterung durch einen Zahlenbereich iterieren:

#!/bin/bash
for i in {1..5}; do
    echo "Number: $i"
done

Das druckt die Zahlen 1 bis 5 aus. For-Schleifen verwandeln wiederholende Aufgaben in nur wenige Codezeilen, was Ihre Skripte effizienter und leichter zu warten macht.

challenge icon

Aufgabe

Einfach

Erstellen Sie ein Shell-Skript namens countdown.sh, das eine for-Schleife verwendet, um einen Countdown von 5 bis 1 auszugeben.

Ihr Skript sollte:

  1. Mit der Shebang-Zeile beginnen (#!/bin/bash)
  2. Eine for-Schleife mit geschweifter-Klammer-Erweiterung verwenden, um durch die Zahlen von 5 bis 1 zu iterieren
  3. Jede Zahl in einer eigenen Zeile im Format: Countdown: [number] ausgeben

Das Skript ausführbar machen und ausführen. Ihre Ausgabe sollte sein:

Countdown: 5
Countdown: 4
Countdown: 3
Countdown: 2
Countdown: 1

Hinweis: Verwenden Sie {5..1}, um einen absteigenden Bereich zu erstellen. In der Schleife verwenden Sie echo "Countdown: $i", wobei i Ihre Schleifenvariable ist.

Spickzettel

Eine for-Schleife ermöglicht es, durch eine Liste von Elementen zu iterieren und für jedes eine Aktion auszuführen.

Grundlegende Syntax:

for variable in list; do
    # commands
done

Schleife über eine Liste von Werten:

for name in Alice Bob Charlie; do
    echo "Hello, $name!"
done

Schleife über Dateien mit Wildcards:

for file in *.txt; do
    echo "Processing $file"
done

Schleife über einen Zahlenbereich mit Brace-Expansion:

for i in {1..5}; do
    echo "Number: $i"
done

Für absteigende Bereiche die Reihenfolge umkehren:

for i in {5..1}; do
    echo "Number: $i"
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