0Pricing
Linux Command Line & Bash Scripting Mastery · Lektion

Bedingte Anweisungen (if, else, elif)

Implementieren Sie mit „if“-, „else“- und „elif“-Anweisungen Entscheidungslogik für dynamisches Verhalten in Ihren Skripten.

Bedingte Anweisungen (if, else, elif) ist eine kostenlose Linux Command Line & Bash Scripting Mastery-Lektion auf CoddyKit. Dies ist Lektion 3 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Linux Command Line & Bash Scripting Mastery-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Linux Command Line & Bash Scripting Mastery-Kurs umfasst insgesamt 4 Lektionen.

Warum Bedingungen wichtig sind

Beim Scripting mit Bash muss Ihr Skript manchmal Entscheidungen treffen. Stellen Sie sich ein Skript vor, das abhängig von einer Benutzereingabe oder vom Vorhandensein einer Datei unterschiedliche Aktionen ausführt.

Hier kommen bedingte Anweisungen ins Spiel! Sie ermöglichen es Ihrem Skript, bestimmte Codeblöcke nur dann auszuführen, wenn bestimmte Bedingungen erfüllt sind.

Die grundlegende „if“-Anweisung

Die einfachste bedingte Anweisung ist die if-Anweisung. Sie prüft eine Bedingung. Ist diese wahr, wird ein Befehlsblock ausgeführt.

Die Syntax lautet:

  • if [ condition ]
  • then
  • # commands if condition is true
  • fi (markiert das Ende des if-Blocks)

Ihr erstes „if“-Skript

Sehen wir uns eine einfache if-Anweisung in Aktion an. Dieses Skript prüft, ob eine Zahl größer als 5 ist.

Ändern Sie den Wert von NUMBER und führen Sie das Skript aus!

#!/bin/bash

NUMBER=10

if [ $NUMBER -gt 5 ]
then
  echo "The number $NUMBER is greater than 5."
fi

echo "Script finished."

Testbedingungen formulieren

Der Teil [ condition ] ist entscheidend. Tatsächlich handelt es sich dabei um einen Befehl namens test oder dessen Alias [.

Sie können auch [[ condition ]] verwenden. Dies ist eine fortgeschrittenere Variante mit einer besseren Syntax, die Probleme durch die Aufteilung von Wörtern verhindert. Für Anfänger ist [ ] üblich.

  • Setzen Sie immer Leerzeichen um die Klammern und Operatoren.
  • Variablen innerhalb von [ ] sollten normalerweise in Anführungszeichen gesetzt werden (z. B. "$VARIABLE"), um Fehler bei leeren oder aus mehreren Wörtern bestehenden Werten zu vermeiden.

Zahlen vergleichen

Beim Vergleichen von Zahlen in Bash verwenden Sie spezielle Operatoren:

  • -eq: gleich
  • -ne: ungleich
  • -gt: größer als
  • -ge: größer oder gleich
  • -lt: kleiner als
  • -le: kleiner oder gleich

Diese werden innerhalb von [ ] oder [[ ]] verwendet.

Zeichenketten vergleichen

Für den Vergleich von Text (Zeichenketten) werden andere Operatoren verwendet:

  • == oder =: gleich (== wird in [[ ]] bevorzugt)
  • !=: ungleich
  • -z "$STRING": wahr, wenn die Zeichenkette leer ist (Länge null)
  • -n "$STRING": wahr, wenn die Zeichenkette nicht leer ist (Länge ungleich null)

Denken Sie daran, Ihre Zeichenkettenvariablen in Anführungszeichen zu setzen!

Die „if-else“-Anweisung

Was ist, wenn Sie bei einer wahren Bedingung einen Codeblock und bei einer falschen Bedingung einen anderen ausführen möchten?

Dafür gibt es if-else! Damit erhält Ihr Skript einen alternativen Ausführungspfad.

Die Syntax lautet:

  • if [ condition ]
  • then
  • # commands if true
  • else
  • # commands if false
  • fi

„if-else“ in Aktion

Dieses Skript fordert Sie zur Eingabe einer Zahl auf und teilt Ihnen mit, ob sie positiv ist oder nicht. Es verwendet eine if-else-Struktur.

Führen Sie es mehrmals mit unterschiedlichen Eingaben aus (z. B. 5, -3, 0).

#!/bin/bash

read -p "Enter a number: " NUM

if [ "$NUM" -gt 0 ]
then
  echo "$NUM is a positive number."
else
  echo "$NUM is not a positive number (it's zero or negative)."
fi

Mehrere Optionen mit „elif“

Wenn mehr als zwei mögliche Ergebnisse vorliegen, können Sie elif (kurz für „else if“) verwenden. Damit können Sie mehrere Bedingungen nacheinander prüfen.

Die Syntax lautet:

  • if [ condition1 ]
  • then
  • # commands if condition1 is true
  • elif [ condition2 ]
  • then
  • # commands if condition1 is false AND condition2 is true
  • else
  • # commands if all conditions are false
  • fi

Fortgeschrittene Entscheidungslogik

Erstellen wir ein Skript, das das Alter eines Benutzers mithilfe von if, elif und else kategorisiert. Damit werden mehrere Szenarien behandelt.

Beachten Sie die Verwendung von && zum Verknüpfen von Bedingungen in [[ ]] (logisches UND).

#!/bin/bash

read -p "Enter your age: " AGE

if [[ $AGE -lt 13 ]]
then
  echo "You are a child."
elif [[ $AGE -ge 13 && $AGE -lt 18 ]]
then
  echo "You are a teenager."
elif [[ $AGE -ge 18 && $AGE -lt 65 ]]
then
  echo "You are an adult."
else
  echo "You are a senior citizen."
fi

Bedingungen prüfen

Betrachten Sie das folgende Bash-Skript:

#!/bin/bash

SCORE=85

if [ $SCORE -lt 60 ]
then
  echo "Fail"
elif [ $SCORE -lt 80 ]
then
  echo "Pass"
else
  echo "Distinction"
fi

Zusammenfassung: Bedingte Anweisungen

Sehr gut! Sie haben gelernt, wie Sie Ihre Bash-Skripte mit bedingten Anweisungen intelligenter machen.

  • Die if-Anweisung führt Code aus, wenn eine Bedingung wahr ist.
  • else stellt einen alternativen Ausführungspfad bereit, wenn die if-Bedingung falsch ist.
  • Mit elif können Sie mehrere Bedingungen nacheinander prüfen.
  • Denken Sie daran, geeignete Operatoren zu verwenden (-eq für Zahlen, == für Zeichenketten) und Ihre if-Blöcke immer mit fi zu schließen.

Diese Werkzeuge sind grundlegend für die Erstellung dynamischer und interaktiver Skripte!

Häufig gestellte Fragen

Ist die Lektion „Bedingte Anweisungen (if, else, elif)“ kostenlos?

Ja — der vollständige Text von „Bedingte Anweisungen (if, else, elif)“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Linux Command Line & Bash Scripting Mastery-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Linux Command Line & Bash Scripting Mastery-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Bedingte Anweisungen (if, else, elif)“?

Implementieren Sie mit „if“-, „else“- und „elif“-Anweisungen Entscheidungslogik für dynamisches Verhalten in Ihren Skripten. Du übst Linux Command Line & Bash Scripting Mastery mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Linux Command Line & Bash Scripting Mastery zu starten?

Keine Vorkenntnisse erforderlich. Linux Command Line & Bash Scripting Mastery auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 3 von 4.

Wie lange dauert die Lektion „Bedingte Anweisungen (if, else, elif)“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Linux Command Line & Bash Scripting Mastery-Lektion Code schreiben und ausführen?

Ja. Jede Linux Command Line & Bash Scripting Mastery-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Erstes Bash-Skript und Shebang
  2. Variablen und Benutzereingaben
  3. Bedingte Anweisungen (if, else, elif)
  4. Mit Arrays in Bash arbeiten
← Zurück zu Linux Command Line & Bash Scripting Mastery