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. |
|
Ist wahr wenn Datei1 älter als Datei2 ist. Oder wahr, wenn Datei2 vorhanden und Datei1 nicht. |
|
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. |