Überprüfen Sie, ob ein Befehl mit dem '$ in Bash gelungen ist?'Besondere Variable

Überprüfen Sie, ob ein Befehl mit dem '$ in Bash gelungen ist?'Besondere Variable

In Bash ist es oft notwendig zu prüfen, ob ein Befehl erfolgreich ist oder fehlgeschlagen ist. Zum Beispiel möchten Sie möglicherweise verschiedene Befehle basierend auf dem Erfolg oder Misserfolg eines Befehls ausführen, oder Sie möchten möglicherweise Fehlerbehandlungen in einem Skript ausführen. Um zu überprüfen, ob ein Befehl in Bash erfolgreich ist oder fehlgeschlagen ist, können Sie den Exit -Status des Befehls untersuchen. Der Ausgangsstatus eines Befehls ist ein numerischer Wert, der den Erfolg oder Misserfolg des Befehls anzeigt. Ein Befehl mit einem Exit-Status von 0 zeigt den Erfolg an, und ein Befehl mit einem Exit-Status ungleich Null zeigt einen Fehler an.

In diesem Artikel werden wir verschiedene Möglichkeiten untersuchen, um den Exit -Status eines Befehls in Bash zu überprüfen, einschließlich der Verwendung des '$?'' Spezielle Variable mit der '&&' Und '||' Operatoren und Verwendung von Skripten und Funktionen. Wenn Sie verstehen, wie Sie den Exit -Status eines Befehls in Bash überprüfen, kann in verschiedenen Szenarien bei der Arbeit mit Bash hilfreich sein.

Überprüfen Sie, ob ein Befehl in Bash gelungen ist

In Bash können Sie prüfen, ob ein Befehl erfolgreich ist oder fehlgeschlagen ist, indem Sie den Ausgangsstatus des Befehls untersuchen. Der Ausgangsstatus eines Befehls ist ein numerischer Wert, der den Erfolg oder Misserfolg des Befehls anzeigt. Ein Befehl mit einem Exit-Status von 0 zeigt den Erfolg an, und ein Befehl mit einem Exit-Status ungleich Null zeigt einen Fehler an.

Um den Exit -Status eines Befehls in Bash zu überprüfen, können Sie die $ verwenden? Spezielle Variable, die den Exit -Status des zuletzt ausgeführten Befehls speichert.

Betrachten Sie beispielsweise den folgenden Befehl:

ls -l /etc /  

Dieser Befehl listet den Inhalt der auf '/usw' Verzeichnis im langen Format. Um zu überprüfen, ob dieser Befehl erfolgreich ist, können Sie den folgenden Code verwenden:

ls -l / etc / if [$? -Gl 0]; dann Echo "Befehl erfolgreich" sonst echo "fehlgeschlagen" fi
123456ls -l /etc /if [$? -Gl 0]; dann Echo "Befehl erfolgreich" sonst echo "fehlgeschlagen" fi

Dieser Code überprüft den Exit -Status des LS -Befehls, indem er den Wert des $ untersucht? besondere Variable. Wenn der Wert von '$?'' Ist '0' ', Der Befehl war erfolgreich und der Code druckt "Befehl erfolgreich". Wenn der Wert von '$?'' ist ungleich Null, der Befehl fehlgeschlagen und der Code druckt "Befehl fehlgeschlagen".

Überprüfen Sie den Ausgangsstatus einer Funktion

Sie können auch die verwenden '$?'' Spezielle Variable zum Überprüfen des Exit -Status eines Befehls in einem Skript oder einer Funktion. Betrachten Sie beispielsweise das folgende Skript:

#/usr/bin/env bash check_command () Befehl if [$? -Gl 0]; Dann kehren Sie 0 zurück. Ret zurück 1 fi check_command ls -l / etc / if [$? -Gl 0]; dann Echo "Befehl erfolgreich" sonst echo "fehlgeschlagen" fi
1234567891011121314151617#/usr/bin/env bash check_command () Befehl if [$? -Gl 0]; Dann kehren Sie 0 zurück. Ret zurück 1 fi check_command ls -l /etc /if [$? -Gl 0]; dann Echo "Befehl erfolgreich" sonst echo "fehlgeschlagen" fi

Dieses Skript definiert eine Funktion check_command, die einen Befehl als Argument nimmt und den Exit -Status des Befehls überprüft. Die Funktion kehrt zurück '0' ' Wenn der Befehl erfolgreich war und '1' Wenn der Befehl fehlschlägt. Das Skript ruft dann die Funktion check_command mit dem Befehl ls auf und überprüft den Exit -Status der Funktion, indem Sie den Wert der untersuchen '$?'' besondere Variable. Wenn der Wert von '$?'' Ist '0' ', Der Befehl war erfolgreich und das Skript druckt "Befehl erfolgreich". Wenn der Wert von '$?'' Ist '1', Der Befehl ist fehlgeschlagen und das Skript druckt "Befehl fehlgeschlagen".

Überprüfen Sie den Auszugsstatus mithilfe '&&' Und '||' in Bash

Zusätzlich zur Verwendung der Verwendung der '$?'' Spezielle Variable können Sie auch die verwenden '&&' Und '||' Operatoren überprüft den Exit -Status eines Befehls und führen verschiedene Befehle basierend auf dem Ergebnis aus. Betrachten Sie beispielsweise den folgenden Code:

ls -l / etc / && echo "Befehl erfolgreich" || Echo "Befehl fehlgeschlagen" "
1ls -l / etc / && echo "Befehl erfolgreich" || Echo "Befehl fehlgeschlagen" "

Dieser Code überprüft den Exit -Status des 'ls' ''Befehl und führt verschiedene Befehle aus, basierend auf dem Ergebnis. Wenn der Befehl LS erfolgreich war, druckt der Code aus "Befehl erfolgreich". Wenn der Befehl LS fehlgeschlagen ist, druckt der Code aus "Befehl fehlgeschlagen".

Abschluss

Zusammenfassend ist die Überprüfung, ob ein Befehl in Bash erfolgreich ist oder fehlgeschlagen ist. Der Ausgangsstatus eines Befehls ist ein numerischer Wert, der den Erfolg oder Misserfolg des Befehls anzeigt. Ein Befehl mit einem Exit -Status von '0' ' Zeigt den Erfolg an, und ein Befehl mit einem Exit-Status ungleich Null zeigt einen Fehler an. Um den Exit -Status eines Befehls in Bash zu überprüfen, können Sie die $ verwenden? Spezielle Variable, die den Exit -Status des zuletzt ausgeführten Befehls speichert.

Sie können auch die $ verwenden? Spezielle Variable zum Überprüfen des Exit -Status eines Befehls in einem Skript oder einer Funktion oder verwenden Sie die '&&' Und '||' Operatoren, um den Exit -Status zu überprüfen und verschiedene Befehle basierend auf dem Ergebnis auszuführen. Verstehen, wie Sie den Exit -Status eines Befehls in Bash überprüfen können, kann in verschiedenen Szenarien hilfreich sein, z.