Endestatus: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 4: Zeile 4:
 
  Returncode ≠ 0 Letzter Befehl wurde nicht fehlerfrei ausgeführt.
 
  Returncode ≠ 0 Letzter Befehl wurde nicht fehlerfrei ausgeführt.
 
Das Kommando ''true'' liefert den Returncode 0, ''false'' liefert den Returncode 1 .
 
Das Kommando ''true'' liefert den Returncode 0, ''false'' liefert den Returncode 1 .
Bei einigen Befehlen wird die zurückgelieferte Fehlermeldung (Returncode ≠ 0) noch weiter differenziert (siehe man  
+
Bei einigen Befehlen wird die zurückgelieferte Fehlermeldung (Returncode ≠ 0) noch weiter differenziert (z.B. '''man fsck'''). In der Systemvariablen $? ist der aktuelle Returncode abgelegt und kann vom Benutzer abgefragt werden.
fsck). In der Systemvariablen $? ist der aktuelle Returncode abgelegt und kann vom Benutzer abgefragt werden.
 
 
Bsp.:
 
Bsp.:
 
*fsck asasas
 
*fsck asasas

Version vom 31. Mai 2023, 11:02 Uhr

Nach der Ausführung eines Befehls wird ein Returncode (Endestatus) zurückgeliefert. Mit Hilfe des Returncodes lässt sich feststellen, ob der letzte Befehl fehlerfrei ausgeführt wurde.

Returncode = 0 Letzter Befehl wurde fehlerfrei ausgeführt.
Returncode ≠ 0 Letzter Befehl wurde nicht fehlerfrei ausgeführt.

Das Kommando true liefert den Returncode 0, false liefert den Returncode 1 . Bei einigen Befehlen wird die zurückgelieferte Fehlermeldung (Returncode ≠ 0) noch weiter differenziert (z.B. man fsck). In der Systemvariablen $? ist der aktuelle Returncode abgelegt und kann vom Benutzer abgefragt werden. Bsp.:

  • fsck asasas
  • echo $?
16

oder

  • ping www.xinux.de -w 1 -c 1 > /dev/null 2>&1
  • ping 172.20.103.2 -w 1 -c 1 > /dev/null 2>&1
  • echo $?
0

Erkenntnis: Rechner ist erreichbar

  • ping 172.20.103.99 -w 1 -c 1 > /dev/null 2>&1
  • echo $?
1

Erkenntnis: Rechner ist nicht erreichbar

  • touch bohnen
  • rm bohnen 2> /dev/null
  • echo $?
0

Erkenntnis: Löschen war erfolgreich

  • rm bohnen 2> /dev/null
  • echo $?
1

Erkenntnis: Löschen war nicht erfolgreich