Das Test Kommando in der Bash

Das Test-Kommando wird dazu benötigt auf diverse Bedingungen zu testen. Es wird oft in Zusammenhang mit programmführenden Konstrukten verwendet. Test kennt verschiedene Operatoren, welche die Bedingungen des Testes beeinflussen. In der folgenden Tabelle sind die Möglichkeiten von Test aufgelistet.

Die Optionen des Test-Kommandos
:

Operator Erklärung
-d Verzeichnis Ist wahr wenn „Verzeichnis“ existiert.
-f Datei
Ist wahr wenn Datei vorhanden und eine normale Datei ist.
-e Datei Ist wahr wenn Datei existiert.
-r Datei
Ist wahr wenn Datei existiert und lesbar ist.
-w Datei Ist wahr wenn die Datei existiert und Schreibzugriff erlaubt ist.
-x Datei Ist wahr wenn Datei existiert und Ausführbar ist.
-h Datei
Ist wahr wenn Datei existiert und ein symbolischer Link ist.
-s Datei
Ist wahr wenn Datei existiert und die Größe nicht null ist.
-N Datei
Ist wahr wenn Datei existiert undseit dem letzten lesen verändert wurde.
-n String Ist wahr wenn String nicht leer ist. (Bsp. eine Variable)
Datei1 -nt Datei2
Ist wahr wenn Datei1 vor Datei2 geändert wurde.
Oder wahr, wenn Datei1 vorhanden und Datei2 nicht.
Datei1 -ot Datei2 Ist wahr wenn Datei1 älter als Datei2 ist.
Oder wahr, wenn Datei2 vorhanden und Datei1 nicht.
Datei1 -ef Datei2 Ist wahr wenn Datei1 und Datei2 auf die gleiche Datei verweisen.
String1 == String2 Ist wahr wenn String1 gleich String2 ist.
Zahl1 -eq Zahl2 Ist wahr wenn Zahl1 gleich Zahl2 ist. (-eq = equal)
Zahl1 -lt Zahl2 Ist wahr wenn Zahl1 kleiner Zahl2 ist. (-lt = less than)
Zahl1 -gt Zahl2 Ist wahr wenn Zahl1 größer Zahl2 ist. (-gt = greater than)
Zahl1 -le Zahl2 Ist wahr wenn Zahl1 kleiner oder gleich Zahl2 ist. (-le = less or equal)
Zahl1 -ge Zahl2 Ist wahr wenn Zahl1 größer oder gleich Zahl2 ist. (-ge = greater or equal)
Zahl1 -ne Zahl2 Ist wahr wenn Zahl1 nicht gleich Zahl2 ist. (-ne = not equal)
! foo Ist wahr wenn foo falsch ist, also eine Negation.