Übersicht der Shell Exit Codes

  • Hallo VDR-Fans,


    ich beschäftige mich gerade etwas mit dem Debugging von Shell Scripten unter LinVDR. Was mir noch fehlt ist eine Übersicht der gebräuchlichen Exit Codes, gibt es sowas?
    Mein Checkscript.sh bricht z. B. mit einen Code 512 ab. Ich vermute mal der kommt bei einem ungültigen Befehl im Script? Ich werde es heut abend mal mit set -x versuchen.
    Danke.


    Viele Grüße

    VDR: easyvdr 1.04, XBMC 12.0
    TV-Karten: KNC1 DVB-C MK3, Satelco EasyWatch DVB-C MK3, Satelco EasyWatch DVB-C MK3
    GPU: NVIDIA GeForce GT 220
    CPU: AMD Athlon(tm) 64 Processor 3500+
    Kernel: 3.0.0-19-generic


  • Zitat

    Original von frausch
    ich wusste garnicht, daß es außer 0=ok noch weitere allgemaingültige conventionen gibt.


    Gibt es eigentlich auch nicht, aber die 512 scheint eine zu sein, denn sie ist iim Script nicht definiert, muss also vom System kommen.

    VDR: easyvdr 1.04, XBMC 12.0
    TV-Karten: KNC1 DVB-C MK3, Satelco EasyWatch DVB-C MK3, Satelco EasyWatch DVB-C MK3
    GPU: NVIDIA GeForce GT 220
    CPU: AMD Athlon(tm) 64 Processor 3500+
    Kernel: 3.0.0-19-generic


  • Ein Shell-Skript kehrt mit dem Returncode des zuletzt abgesetzten Befehls zurück, wobei hierbei so etwas wie das schließende fi einer if-Verzweigung oder ein done einer Schleife nicht zählt, sondern nur "echte" Befehle.

    Elitegroup K7S5A / Athlon XP 1800+ / 1280MB RAM / HD: 1x 80GB, 1x 250GB
    Technotrend DVB-S FF 1.6 + Technotrend DVB-S FF S2300 mod.
    c't VDR 4.5 (VDR 1.4.2-1ctvdr2, Kernel 2.6.12-ct-1)

  • Danke! Ich nehme an der jeweilige exit-code ist somit Befehls-spezifisch und muss in der jeweilige Man-Page zum Befehl nachgelesen werden?
    Danke.


    Grüße

    VDR: easyvdr 1.04, XBMC 12.0
    TV-Karten: KNC1 DVB-C MK3, Satelco EasyWatch DVB-C MK3, Satelco EasyWatch DVB-C MK3
    GPU: NVIDIA GeForce GT 220
    CPU: AMD Athlon(tm) 64 Processor 3500+
    Kernel: 3.0.0-19-generic


  • Völlig korrekt. Nur manchmal hast Du Pech und es nicht dokumentiert.


    Gruss Sven

    VDR1 : PIII - 550 Mhz - 256MB - 160 GB + 250 GB - DVD Brenner - 2 * DVB-S Budget - DXR3 - Etch + e-tobi
    VDR2 : PII - 233 Mhz - 256MB - diskless - DXR3 - c't VDR5 + e-tobi
    VDR3 : S100 - zendeb

  • Hi,


    "man bash" ->


    Zitat

    wobei hierbei so etwas wie das schließende fi einer if-Verzweigung oder ein done einer Schleife nicht zählt, sondern nur "echte" Befehle.


    Schleifen und Verzweigungen haben als Returncode den Returncode des letzten Befehls, der darin ausgeführt wurde. z.B.

    Code
    if [ true ]; then
    cat "datei gibt es nicht"
    fi
    echo $?


    liefert "1".


    Ansonsten sind die Returncodes natürlich abhängig vom Befehl.


    Gruß,
    Andreas

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!