Bash-Vergleichsoperatoren und Syntax
Bash-Vergleichsoperatoren
Bash bietet eine Vielzahl von Vergleichsoperatoren, die zum Vergleichen von numerischen Werten, Strings und anderen Datentypen verwendet werden können. Hier sind die am häufigsten verwendeten Vergleichsoperatoren in Bash:
Operator |
Beschreibung |
-eq |
Gleich |
-ne |
Ungleich |
-gt |
Größer als |
-lt |
Kleiner als |
-ge |
Größer oder gleich |
-le |
Kleiner oder gleich |
= |
Gleich (für Strings) |
!= |
Ungleich (für Strings) |
Syntax für numerische Vergleiche
Um numerische Vergleiche in Bash durchzuführen, können Sie die folgende Syntax verwenden:
if [ "$variable1" -op "$variable2" ]; then
## Anweisungen, die ausgeführt werden, wenn der Vergleich wahr ist
else
## Anweisungen, die ausgeführt werden, wenn der Vergleich falsch ist
fi
Ersetzen Sie -op
durch den entsprechenden Vergleichsoperator aus der obigen Tabelle.
Syntax für String-Vergleiche
Für String-Vergleiche ist die Syntax etwas anders:
if [ "$variable1" OP "$variable2" ]; then
## Anweisungen, die ausgeführt werden, wenn der Vergleich wahr ist
else
## Anweisungen, die ausgeführt werden, wenn der Vergleich falsch ist
fi
Ersetzen Sie OP
durch den entsprechenden String-Vergleichsoperator, wie z. B. =
oder !=
.
Kombinieren von Vergleichen
Bash ermöglicht es Ihnen auch, mehrere Vergleiche mithilfe von logischen Operatoren wie &&
(und) und ||
(oder) zu kombinieren. Dies kann nützlich sein, wenn Sie komplexere bedingte Prüfungen durchführen müssen. Hier ist ein Beispiel:
if [ "$var1" -gt 10 ] && [ "$var2" -lt 20 ]; then
## Anweisungen, die ausgeführt werden, wenn beide Bedingungen wahr sind
else
## Anweisungen, die ausgeführt werden, wenn mindestens eine Bedingung falsch ist
fi
Indem Sie die verfügbaren Vergleichsoperatoren und ihre Syntax verstehen, können Sie leistungsfähigere und flexiblere Bash-Skripte schreiben, die Entscheidungen auf der Grundlage von numerischen und String-Werten treffen können.