Beispiel 01: Verwenden von Exit 0
Die erste Methode, die wir in diesem Beispiel verwendet haben. Erstellen Sie eine neue Datei in der Shell mit Hilfe eines Befehls "Touch" und öffnen Sie sie in jedem Editor.
Es ist allgemein bekannt, dass die Read -Anweisung Eingaben vom Benutzer erhalten. Hier dauert es zur Laufzeit und speichert sie in der Variablen „x“. Die Erklärung "if" hat eine Bedingung überprüft. Wenn der von einem Benutzer eingegebene Wert von „X“ auf 5 gelangt ist, wird angezeigt, dass die Nummer über die Echo -Anweisung übereinstimmt. Die Klausel „Exit 0“ wurde hier verwendet. Nach der Ausführung der Anweisung "Echo" wird das Bash -Skript beendet, und aufgrund von "Beenden 0" wird keine Ausführung mehr durchgeführt. Andernfalls wird die Erklärung der „Echo“ außerhalb der Anweisung "If" ausgeführt, wenn die Bedingung nicht erfüllt ist.
Führen Sie Ihre Bash -Datei mit Hilfe einer Bash -Abfrage in der Shell aus. Der Benutzer fügte 4 als Eingabe hinzu. Da 4 nicht gleich 5 ist, wird der "dann" -Teil der "if" -Antage nicht ausgeführt. Es wird also kein plötzlicher Ausgang passieren. Auf der anderen Seite heißt es in der Echo -Erklärung außerhalb der „if“ -serklärung, dass „Nummer nicht übereinstimmt…“ und das Programm hier endet.
$ Bash Bash.SchFühren Sie den gleichen Code erneut mit dem Bash -Befehl aus. Der Benutzer fügte diesmal 5 hinzu. Wie 5 erfüllt die Bedingung, wurde die Anweisung „Echo“ innerhalb der Klausel „dann“ ausgeführt. Danach stoppt das Programm aufgrund der Verwendung von "Exit 0" schnell.
$ Bash Bash.SchBeispiel 02: Verwenden von Exits
Anstatt "Exit 0" zu verwenden, können Sie einfach "Beenden" in Ihrem Bash -Skript verwenden, um den Code zu beenden. Öffnen Sie also dieselbe Datei und aktualisieren Sie Ihren Code. Hier wurde nur die Klausel "Exit" geändert, ich.e., ersetzt durch "Ausgang". Die gesamte Datei blieb unverändert. Sparen wir den Code zunächst mit dem "Strg+S" und beenden Sie mit "CRL+X" mit "CRL+X". Lassen Sie es uns ausführen, um festzustellen, ob es genauso funktioniert wie die Klausel „Exit 1“.
Führen Sie die Bash -Datei „Bash aus.sh ”im Terminal, indem der Befehl im angehängten Screenshot verwendet wird. Der Benutzer hat den Wert „6“ eingegeben und er hat den Zustand nicht erfüllt. Daher ignoriert der Compiler die "dann" -Klaus.
$ Bash Bash.SchFühren Sie die gleiche Datei erneut aus. Diesmal fügte der Benutzer 5 hinzu, um die Bedingung zu erfüllen. So beendet sich das Bash -Skript direkt nach der Ausführung der Klausel "Echo" in der Anweisung "if".
$ Bash Bash.SchBeispiel 03: Verwenden von Exit 1
Sie können auch die Klausel "Beenden" verwenden, um das Bash -Skript zu beenden, während Sie 1 zur Laufzeit mit ihr angeben. Öffnen Sie also dieselbe Datei und aktualisieren Sie Ihren Code wie zuvor. Die einzige Änderung ist "Exit 1" anstelle von "Beenden" oder "Beenden 0". Speichern Sie Ihren Code und beenden Sie den Editor über "Strg+S" und "Strg+x".
Bei der ersten Ausführung fügte der Benutzer 6 als Eingabe hinzu. Die Bedingung erfüllt nicht und Befehle innerhalb der Anweisung "If" werden nicht ausgeführt. Also passierte also kein plötzlicher Ausgang.
$ Bash Bash.SchBeim zweiten Versuch fügte der Benutzer 5 hinzu, um den Zustand zu erfüllen. Die Befehle in der Anweisung "if" werden ausgeführt, und das Programm beendet nach dem Ausführen der Klausel "Echo".
$ Bash Bash.SchBeispiel 04
Nutzen wir die Klausel „Exit 1“ im Bash -Skript bei der Überprüfung verschiedener Situationen. Wir haben also den Code derselben Datei aktualisiert. Nach dem Bash-Support wurde die Anweisung „if“ initialisiert, um zu überprüfen, ob der aktuell angemeldete Benutzer, i.e., "Linux" ist nicht der Root -Benutzer. Wenn die Bedingung erfüllt ist, wird die Echo -Erklärung innerhalb der Klausel „Dann“ ausgeführt, und das Programm wird hier direkt beendet. Wenn das derzeit angemeldete Konto ein Stammbenutzer ist, wird die Anweisungen außerhalb der Anweisung "If" weiterhin ausgeführt. Das Programm erhält weiterhin zwei Eingaben von einem Benutzer und berechnet die Summe beider Ganzzahlen. Die berechnete „Summe“ wird angezeigt und dann wird das Programm beendet.
Da das "Linux" -Konto kein Stammnutzer unseres Ubuntu 20 ist.04 Die Ausführung dieses Code hat nur die Anweisung "if" und die Klauseln zwischen ihm ausgeführt. Das Programm beendet danach.
$ Bash Bash.SchBeispiel 05: Verwenden von "Set -e" integriert
Es ist allgemein bekannt, dass das integrierte „set -e“ das Programm beendet, wenn er auf den Status ungleich Null stieß. Wir haben also 3 zwei benannte Funktionen mit 1 Echo-Anweisung und einer Rückgabestatusklausel in jedem hinzugefügt. Das "Set +e" wird vor dem Aufrufen der ersten beiden Methoden initialisiert, und danach wird "set -e" verwendet, und zwei Funktionen werden danach aufgerufen.
Bei der Ausführung werden die Echo -Anweisungen von Show1 und Show2 -Funktion ausgeführt, und das Programm wird nicht kündigen. Während nach dem „Set -e“ beendet das Programm nach der Ausführung der Echo -Anweisung der Show2 () -Methode, während es auf „Rückgabe 1“ trifft. Die Methode Show3 wird danach nicht aufgerufen.
Nachdem wir diesen Code ausgeführt haben, haben wir die Ausgabe wie erwartet erhalten. Nach der Begegnung mit dem Status der Rückgabe 1 wurde das Programm gestoppt, ohne die Methode „show3 ()“ auszuführen.
$ Bash Bash.SchAbschluss
Dieser Leitfaden deckt alle möglichen Möglichkeiten ab, ein Bash -Skript beim Schreiben, Ausführen oder Ausführen zu beenden. Versuchen Sie daher, jedes in diesem Artikel behandelte Beispiel zu implementieren, um ein klareres Verständnis zu erhalten.