Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com
Answertopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 

Debian GNU/Linux Reference Guide
Prev Home Next

13.2.5 Bedingte Ausdrucke in der Shell

Jedes Kommando gibt einen Exit-Status zur�ck, was f�r einen bedingten Ausdruck verwendet werden kann:

  • Erfolg: 0 (wahr)

  • Fehler: 1–255 (falsch)

Es ist zu beachten, dass die Verwendung des 0 Werts im Sinne von "wahr" sich von den �blichen Konventionen in anderen Bereichen der Programmierung unterscheidet. Auch ist `[' das �quivalent des test-Kommandos, das sein Argument bis zu `]' als bedingten Ausdruck auswertet.

Grundlegende bedingte Ausdrucke zum Einpr�gen sind:

     Kommando && bei_Erfolg_dies_starten || true
     Kommando || bei_Misserfolg_dies_starten
     
     if [ bedingter_Ausdruck ]; then
      bei_Erfolg_dies_starten
     else
      bei_Misserfolg_dies_starten
     fi

Es wurde || true verwendet, um sicherzustellen, dass das Shellskript in dieser Zeile nicht versehentlich abgebrochen wird, wenn die Shell (oder set) mit der Option -e gestartet wird.

Dateivergleichsoperatoren im bedingten Ausdruck sind:

     Ausdruck          Wahr wenn ...
     -e Datei          Datei existiert.
     -d Datei          Datei existiert und ein Verzeichnis ist.
     -f Datei          Datei existiert und eine regul�re Datei ist.
     -w Datei          Datei existiert und schreibbar ist.
     -x Datei          Datei existiert und ausf�hrbar ist.
     Datei1 -nt Datei2 Datei1 neuer als Datei2 ist. (Modifizierungszeit)
     Datei1 -ot Datei2 Datei1 �lter als Datei2 ist. (Modifizierungszeit)
     Datei1 -ef Datei2 beide die selbe Device- und Inode-Nummer haben.

Stringvergleichsoperatoren im bedingten Ausdruck sind:

     Ausdruck       Wahr wenn ...
          -z str    die L�nge von str Null ist.
          -n str    die L�nge von str nicht Null ist.
     str1 == str2   str1 und str2 gleich sind.
     str1 =  str2   str1 und str2 gleich sind.
        ("=" sollte statt "==" f�r POSIX-Konformit�t verwendet werden)
     str1 != str2   str1 und str2 ungleich sind.
     str1 <  str2   str1 vor str2 einsortiert wird (locale abh�ngig).
     str1 >  str2   str1 nach str2 einsortiert wird (locale abh�ngig).

Arithmetische Ganzzahlvergleiche im bedingten Ausdruck sind -eq, -ne, -lt, -le, -gt und -ge.


Debian GNU/Linux Reference Guide
Prev Home Next

 
 
  Published under the terms of the GNU General Public License Design by Interspire