Shell Programmierung >> IF Abfrage

IF Abfrage - Shellprogrammierung unter Linux


Eine Programmiersprache ohne If-Abfrage ? Nahezu undenkbar. Wer bereits mit anderen Programmiersprachen vertraut ist, wird mit dem Aufbau der If-Abfrage in der Shellprogrammierung keine Probleme haben.

Für alle Nicht-Programmierer noch mal eine kurze Erläuterung: Es wird abgefragt, ob ein Wert „wahr“ oder „falsch“ ist. Verbales Beispiel: Wenn (if) Wert der Variablen1 = Zahl 1 dann tue AA, ansonsten tue BB.

So sieht die Syntax dann dazu aus:


Eine Erweiterung der If-Abfrage, ist die If-Elif Abfrage. Hier kann man also mehrere Bedingungen abfragen. (wenn Variable1 = Wert1, tue dies, wenn Variable1 = Wert2, tue das, ansonsten mach irgendwas anderes…)

Test-Kommando um Bedingung zu überprüfen


Um Bedingung in einer If-Abfrage zu überprüfen, benötigt man natürliche entsprechende Operationen. Diese stellt das Test-Kommando bereit. Die folgende Tabelle zeigt, welche Test-Möglichkeiten zur Verfügung stehen.


Name Bedeutung Beispiel
String1 == String2 True, wenn String1 gleich String2 String1 = „hallo“
String2 = „hallo“


String1 == String2

Ausdruck ist wahr.
-eq Gleich (equal) Zahl1 –eq Zahl2
-lt Kleiner als (less than) Zahl1 –lt Zahl2
-gt Größer als (greater than) Zahl1 –gt Zahl2
-ne Nicht gleich (not equal) Zahl1 –ne Zahl2
-d [Verzeichnis] True, wenn das angegeben Verzeichnis existiert -d Testverzeichnis
-w [Datei] True, wenn Zugriffsrechte das Schreiben in der Datei erlauben -w Testdatei
-f [Datei] True, wenn die angegebene Datei existiert -f Testdatei
-x [Datei] True, wenn Rechte zum Ausführen der Datei gewährt sind -x Testdatei

Beispiel Shell Programmierung: IF - Abfrage


Das folgende Script überprüft, ob eine Datei, die per Parameter übergeben wird, vorhanden ist oder nicht.




Buch - Empfehlung
Letzte Forenbeiträge