Wie beende ich ein Bash -Skript??

Wie beende ich ein Bash -Skript??
Möglicherweise haben Sie viele Situationen gestoßen, in denen Sie Ihr Bash -Skript über einige Unannehmlichkeiten kündigen müssen. Es gibt viele Methoden, um das Bash -Skript zu verlassen, ich.e., Kündigen Sie beim Schreiben eines Bash -Skripts, während der Ausführung oder zur Laufzeit. Eine der vielen bekannten Methoden, um ein Bash -Skript während des Schreibens zu beenden.e., "Strg+x". Während der Laufzeit können Sie den Code mit "Strg+z" beenden. Diese Anleitung zeigt, wie das Stapel -Skript mit den verschiedenen Ausgangsklauseln während der Ausführung beendet werden kann. Beginnen wir mit dem ubuntu 20, indem wir uns vom Ubuntu 20 anmelden.04 System zuerst und öffnen die Shell mit "Strg+Alt+T".

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.Sch

Fü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.Sch

Beispiel 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.Sch

Fü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.Sch

Beispiel 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.Sch

Beim 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.Sch

Beispiel 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.Sch

Beispiel 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.Sch

Abschluss

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.