Ein Bash-Skript mit unterschiedlichen Rückgabecodes beim Beenden zurückgeben

Ein Bash Skript Mit Unterschiedlichen Ruckgabecodes Beim Beenden Zuruckgeben



Exit-Codes sind ganze Zahlen, die anzeigen, dass ein Skript erfolgreich ausgeführt wurde. Diese Codes werden auch als Rückgabecodes oder Exit-Status bezeichnet. Exit-Codes geben bei erfolgreicher Ausführung normalerweise Null und bei nicht erfolgreicher Ausführung Nicht-Null zurück.

Viele Benutzer von Bash-Skripten möchten jedoch beim Beenden mit unterschiedlichen Rückgabecodes zurückkehren, erhalten jedoch Fehler. In diesem Tutorial erklären wir die verschiedenen Ansätze, um ein Bash-Skript beim Beenden mit unterschiedlichen Rückgabecodes zurückzugeben.

Bash-Skript kehrt beim Beenden mit unterschiedlichen Rückgabecodes zurück

Bevor wir uns den Methoden zuwenden, werfen wir einen Blick auf die Exit-Codes, die bestimmte Bedeutungen haben:







Exit-Codes Beschreibung
0 Das Skript wird erfolgreich ausgeführt.
1 Das Skript wird mit allgemeinen Fehlern ausgeführt.
zwei Ungültige Verwendung einiger integrierter Befehle im Skript.
126 Zeigt den Fehler für den aufgerufenen Befehl an, der nicht ausgeführt werden kann.
127 Der Befehl existiert nicht im Skript.
128 Zeigt den Out-of-Range-Exit-Code oder das schwerwiegende Fehlersignal an.
130 STRG+C beendet das Skript.
255 Ein allgemeiner Fehlercode des Skripts.

Wie erhalte ich Rückgabecodes beim Beenden?

Sie brauchen nur das „Echo $?“ zu schreiben. Befehl, um den Rückgabecode abzurufen. Sie möchten beispielsweise zwei Zahlen mit dem folgenden Bash-Skript vergleichen:





Sobald Sie das Skript im Terminal ausgeführt haben, führen Sie „echo $?“ aus. um den Rückgabecode beim Beenden zu erhalten:





. / Vergleich.sh

Echo $?



Die „comparison.sh“ wird erfolgreich ausgeführt. Deshalb zeigen Terminals als Rückgabewert Null an. In ähnlicher Weise erhalten Sie bei erfolgreicher Ausführung des Skripts einen Wert ungleich Null. Wenn Sie beispielsweise den Befehl Ls anstelle des Befehls ls im Skript verwenden, erhalten Sie möglicherweise einen Nicht-Null-Rückgabecode:

Wie Sie im vorherigen Bild sehen können, zeigt das Terminal 127 als Rückgabecode an, weil das Skript den falschen Befehl enthielt:

Lassen Sie ein Bash-Skript mit unterschiedlichen Exit-Codes zurückkehren

Sie können die Exit-Codes manuell im Skript einrichten. Wenn Sie beispielsweise 255 als Exit-Code erhalten möchten, verwenden Sie das folgende Skript:

Führen Sie nun das Skript aus und führen Sie dann das 'echo $?' Befehl, um 255 als Rückgabecode zu erhalten:

. / Vergleich.sh

Echo $?

Fazit

Hier geht es um die Exit-Codes, die Sie nach dem Ausführen des Bash-Skripts unter Linux erhalten können. Exit-Codes helfen einem Benutzer, den Status des Bash-Skripts zu identifizieren. Sie können die verschiedenen Rückgabecodes auch manuell einrichten und verwenden. Daher können Sie anstelle von Null einen Exit-Code ungleich Null erhalten, selbst wenn das Skript erfolgreich ausgeführt wird. Wenn Sie mehr über die Bash-Skripte erfahren möchten, besuchen Sie unsere offizielle Website.