Bash Einfache Verzweigungen: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 6: Zeile 6:
 
==&&==
 
==&&==
 
*Der Befehl nach ''&&'' wird dabei nur ausgeführt, wenn der Returncode des vorherigen Befehls 0 war, also der Befehl vor der Pipe fehlerfrei ausgeführt wurde.  
 
*Der Befehl nach ''&&'' wird dabei nur ausgeführt, wenn der Returncode des vorherigen Befehls 0 war, also der Befehl vor der Pipe fehlerfrei ausgeführt wurde.  
*Ist ein Befehl vor einer Pipe nicht erfolgreich  
+
*Ist ein Befehl vor einer Pipe nicht erfolgreich wir der 2. Befehl nicht ausgeführt.
 
==||==
 
==||==
 
+
*Der Befehl nach ''||'' wird dabei nur ausgeführt, wenn der Returncode des vorherigen Befehls 1 war, also der Befehl vor der Pipe fehlerfrei ausgeführt wurde.
(Returncode != 0), wird der Befehl nach ''||'' ausgeführt.
+
*Ist ein Befehl vor einer Pipe erfolgreich wir der 2. Befehl nicht ausgeführt.

Version vom 25. Mai 2023, 17:23 Uhr

Was ist das?

  • In Abhängigkeit vom Returncode eines Befehls oder einer Pipe kann mit den Sonderzeichen && und || eine Verzweigung durchgeführt werden.
  • echo das ist sux1. > sux1
  • rm sux1 && echo sux1 ist geloescht!
  • rm sux1 || echo sux1 konnte nicht geloescht werden.

&&

  • Der Befehl nach && wird dabei nur ausgeführt, wenn der Returncode des vorherigen Befehls 0 war, also der Befehl vor der Pipe fehlerfrei ausgeführt wurde.
  • Ist ein Befehl vor einer Pipe nicht erfolgreich wir der 2. Befehl nicht ausgeführt.

||

  • Der Befehl nach || wird dabei nur ausgeführt, wenn der Returncode des vorherigen Befehls 1 war, also der Befehl vor der Pipe fehlerfrei ausgeführt wurde.
  • Ist ein Befehl vor einer Pipe erfolgreich wir der 2. Befehl nicht ausgeführt.