Wie fordere ich die Eingabe in Bash auf?

Wie fordere ich die Eingabe in Bash auf?

Es ist häufig erforderlich, Berechnungen abhängig von Benutzereingaben beim Erstellen eines Bash -Skripts durchzuführen. In diesem Handbuch werfen wir zunächst einen Blick auf die Interpretation und Überprüfung der Benutzereingaben mit einem Shell -Skript mit einem Shell -Skript. Wir werden den integrierten Bash -Read -Befehl verwenden, um die Bash -Benutzereingabe zu interpretieren. Der Befehl read nimmt einen gewissen Wert als Eingabe über den Benutzer und verteilt ihn der Variablen. Es las nur eine einsame Linie durch das Bash -Befehlsterminal vor. In diesem Handbuch lernen Sie, wie Sie die Benutzereingabe vom Terminal und des Skripts interpretieren können.

Um den Befehl read zu implementieren, finden Sie hier die Syntax:

lesen

Beispiel 01:

Nehmen wir ein einfaches Beispiel dafür. Öffnen Sie ein Terminal und erstellen Sie eine neue Datei “Eingabe.Sch".

Öffnen Sie die Datei und fügen Sie einen kleinen Code wie unten hinzu. Erstens fordert die Echo -Anweisung den Benutzer auf, den Eingabelwert hinzuzufügen. Die Read -Anweisung wird verwendet, um den Benutzerwert einzugeben, der in der Variablen „Name“ gespeichert wird. Die letzte Echo -Anweisung wird verwendet, um die Antwort mit Eingabewert als Variable „$ name“ zu drucken.

Führen Sie die Datei mit dem Befehl bash aus. Erstens wird der Name auffordern. Wenn der Benutzer den Wert „AQSA“ eingibt, wird die Nachricht mit dem darin enthaltenen Wert gedruckt.

Beispiel 02:

Öffnen Sie die alte Datei und schreiben Sie den folgenden Code hinein. Wir können den integrierten Befehl in Leser verwenden. an einen Benutzer mit einer Abfrage mit dieser Option -P -Option. Sie müssen beschwören, um das Schlüsselwort "Readline" zu verwenden, um die Zeilenbearbeitung mit Pfeiltasten zu lassen. Verwenden Sie anschließend die Variable, um den Pfad einer von einem Benutzer in der Befehlsschale eingegebenen Datei zu drucken.

Überprüfen Sie die Ausgabe dieses Codes mit dem Befehl Bash im Terminal. Sie werden sehen, dass der Dateipfad in die Shell eingegeben wird. Wenn Sie den erforderlichen Wert eingeben und die Eingabetaste drücken, wird er ausdrucken.

$ bash Input.Sch

Wenn Sie eine Antwort vorschlagen möchten, müssen Sie das Schlüsselwort "-i" nach der Zeichenfolge mit dem Pfad in invertierten Kommas verwenden.

Überprüfen Sie die Ausgabe für aktualisierten Code mit dem Befehl bash. Sie werden feststellen, dass Sie einen Dateipfad wie unten vorschlagen.

Beispiel 03:

Lassen Sie uns ein weiteres Beispiel für die Aufforderung zur Eingabe in einer Shell haben. Schreiben Sie den folgenden Code in der Datei „Eingabe auf.Sch". Wir haben zwei Lesenbefehle, um Anmeldeinformationen eines Benutzers auf der Shell hinzuzufügen. Das Schlüsselwort "-sp" wird verwendet, um das Anmeldeinformationskennwort beim Eingeben der Shell auszublenden.

Bei der Ausführung sehen Sie, dass der Benutzer seine Anmeldeinformationen eingegeben hat, während das Passwort während der Eingabe verborgen ist. Am Ende wurde die Nachricht angezeigt, die dank dem Benutzer zu zahlen ist.

Beispiel 04:

Wir haben ein weiteres Beispiel, um mehrere Autennamen als Werte aus der Bash -Shell des Benutzers zu lesen. Zu diesem Zweck benötigten wir drei Variablen als "CAR1", "CAR2" und "CAR3". Wir haben einen Echo -Kommentar, der nach den Namen von Autos fragt. Der Befehl Read wird verwendet, um eingegebene Werte (Namen von Autos) von einem Benutzer in einer Shell zu lesen. In den nächsten drei Echo -Anweisungen werden die Nachrichten mit den Namen des Autos nacheinander gedruckt.

Führen Sie mit dem Befehl Bash die Datei aus. Es wird nach den Namen von Autos fragen, die Sie mögen. Wenn der Benutzer nacheinander die Namen von CARs eingab, speichert er sie in Variablen eines Readbefehls und druckt sie mit den nächsten drei Echo -Anweisungen einzeln aus.

Beispiel 05:

Im obigen Beispiel haben wir gesehen. In diesem Beispiel erfahren wir, wie Sie Benutzer-Eingabelwerte in einer Variablen als Array-Mitglieder unter Verwendung des Schlüsselworts „-a“ lesen können. Öffnen Sie also dieselbe Datei und schreiben Sie den folgenden Code darin. In der Echo -Erklärung werden Sie aufgefordert, die erforderlichen Eingaben einzugeben. Die Read-Anweisung enthält das Schlüsselwort "-a", um mehrere Werte vom Benutzer zu entnommen und sie auf dem einen variablen Array "Namen" zu speichern. Bei der letzten Echo -Anweisung werden alle eingegebenen Werte als Array -Mitglieder innerhalb des String -Textes gedruckt.

Beim Ausführen der Datei “Eingabe.SH ”wurde der Benutzer aufgefordert, die Werte einzugeben. Wenn der Benutzer die Werte eingibt, wurden diese Werte in die Array -Variable „Namen“ gespeichert, die Array -Variable gespeichert wurden. Nach dem Speichern dieser Werte wird die Echo -Anweisung ausgeführt und drucken Sie die eingegebenen Namen als Array -Werte in sich wie gezeigt aus.

Beispiel 06:

Nehmen wir die gleiche Datei mit wenig Änderung im Skript ein. Wir haben zwei Lesebefehle geschrieben, um einem Benutzer als Eingabe in einer Shell Wert zu nutzen und sie in zwei Variablen zu speichern: "Num1" und "Num2". Danach wurden beide Variablen ausgedruckt.

Schreiben Sie in der Befehlsanlage den Befehl chmod, um dieser Datei Ausführungsberechtigungen zuzuweisen.

$ chmod +x Eingabe.Sch

Wenn Sie diese Datei mit Bash ausführen, werden Sie angezeigt, dass Sie nacheinander Nummern hinzufügen. Wenn Sie die erforderlichen Werte eingeben, werden beide Zahlen getrennt ausgedruckt.

Wenn Sie validieren möchten, dass ein Feld oder eine Variable vom Benutzer leer bleibt, können Sie den vorherigen Code wie unten aktualisieren. Das Schlüsselwort "-z" wird verwendet, um beide Variablen zu überprüfen, wenn sie leere Räume enthalten.

Während der Ausführung hat der Benutzer Platz als Nummer hinzugefügt. Der Benutzer erhielt eine Nachricht, um es erneut zu versuchen, da die vom Benutzer eingegebene Variable Leerzeichen erhielt.

Versuchen wir denselben Code mit einigen Bedingungen über die vom Benutzer eingegebenen Zahlen. Wenn der Benutzer ein anderes Zeichen als die im folgenden Code genannten Zeichen eingibt, wird eine Nachricht übergeben.

Während des Versuchs dieses Code hat ein Benutzer ein spezielles Zeichen hinzugefügt, das eine Eingabeaufforderung zur Nachricht generiert.

Abschluss

In diesem Handbuch haben Sie erfolgreich gelernt.