BASH-Programmierung

Wie fordere ich zur Eingabe in Bash auf??

Wie fordere ich zur Eingabe in Bash auf??

Beim Erstellen eines Bash-Skripts müssen häufig Berechnungen in Abhängigkeit von Benutzereingaben durchgeführt werden. Bevor wir in diesem Handbuch eine grundlegende Operation mit einem Shell-Skript ausführen, werfen wir zunächst einen Blick auf das Interpretieren und Überprüfen von Benutzereingaben. Wir werden den integrierten Bash-Read-Befehl verwenden, um die Bash-Benutzereingaben zu interpretieren. Der Lesebefehl nimmt einen Wert als Eingabe über den Benutzer an und weist ihn der Variablen zu. Es liest nur eine einzelne Zeile über das Bash-Befehlsterminal aus. In dieser Anleitung erfahren Sie, wie Sie die Benutzereingaben des Terminals und des Skripts interpretieren.

Um den Lesebefehl zu implementieren, ist hier die Syntax:

lesen

Beispiel 01:

Nehmen wir ein einfaches Beispiel für das Lesen von Eingaben des Benutzers in bash, wenn Sie dazu aufgefordert werden. Öffnen Sie ein Terminal und erstellen Sie eine neue Datei „input“.Sch".

Öffnen Sie die Datei und fügen Sie wie unten einen kleinen Code hinzu. Erstens fordert die echo-Anweisung den Benutzer auf, einen Eingabewert 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 dem eingegebenen Wert als Variable „$NAME“ zu drucken.

Führen Sie die Datei mit dem bash-Befehl aus. Zuerst wird nach dem Namen gefragt. Wenn der Benutzer den Wert „Aqsa“ eingibt, wird die Nachricht mit dem darin enthaltenen Wert gedruckt.

Beispiel 02:

Öffne die alte Datei und schreibe den folgenden Code hinein. Möglicherweise verwenden wir den integrierten Lesebefehl; an einen Benutzer mit einer Abfrage mit der Option -p. Sie müssen sich aufrufen, um das Schlüsselwort "readline" zu verwenden -e um die Zeilenbearbeitung mit den Pfeiltasten zu ermöglichen. Verwenden Sie danach die Variable, um den Pfad einer Datei zu drucken, die von einem Benutzer in der Befehlsshell eingegeben wurde.

Lassen Sie uns die Ausgabe dieses Codes mit dem Befehl bash im Terminal überprüfen check. Sie werden sehen, dass Sie nach dem Dateipfad in der Shell gefragt werden. Wenn Sie den erforderlichen Wert eingeben und die Eingabetaste drücken, wird er ausgedruckt.

$ Bash-Eingabe.Sch

Wenn Sie eine Antwort vorschlagen möchten, müssen Sie nach der Zeichenfolge mit dem Pfad in Anführungszeichen das Schlüsselwort „-i“ verwenden.

Lassen Sie uns die Ausgabe mit dem bash-Befehl auf aktualisierten Code überprüfen. Sie werden feststellen, dass es Ihnen einen Dateipfad wie folgt vorschlägt.

Beispiel 03:

Lassen Sie uns ein weiteres Beispiel für die Eingabeaufforderung in einer Shell haben. Schreiben Sie den folgenden Code in die Datei „input“.Sch". Wir haben zwei Lesebefehle zum Hinzufügen von Anmeldeinformationen eines Benutzers auf der Shell. Das Schlüsselwort „-sp“ wird verwendet, um die Anmeldeinformationen „Passwort“ beim Betreten der Shell zu verbergen.

Bei der Ausführung können Sie sehen, dass der Benutzer seine Anmeldeinformationen eingegeben hat, während das Kennwort bei der Eingabe verborgen ist. Am Ende hat es die Nachricht angezeigt, dank des Benutzers zu bezahlen.

Beispiel 04:

Wir haben ein weiteres Beispiel, um mehrere Autonamen als Werte aus der Bash-Shell des Benutzers zu lesen. Dazu benötigten wir drei Variablen als „car1“, „car2“ und „car3“. Wir haben einen Echokommentar, der nach den Namen von Autos fragt. Der Lesebefehl wird verwendet, um eingegebene Werte (Namen von Autos) von einem Benutzer in einer Shell zu lesen. Die nächsten drei Echo-Anweisungen geben die Nachrichten mit den Namen des Autos nacheinander aus.

Führen Sie die Datei mit dem bash-Befehl aus. Es wird nach den Namen der Autos gefragt, die Sie mögen. Wenn der Benutzer die Namen der Autos nacheinander eingegeben hat, speichert er sie in Variablen eines Lesebefehls und druckt sie aus, indem er die nächsten drei Echo-Anweisungen nacheinander verwendet.

Beispiel 05:

Im obigen Beispiel haben wir gesehen, wie Sie eine Benutzereingabe auffordern, während die Eingabe in drei Variablen gespeichert wird. In diesem Beispiel lernen wir, wie man vom Benutzer eingegebene Werte in einer Variablen als Array-Mitglieder mit dem Schlüsselwort „-a“ liest. Öffnen Sie also dieselbe Datei und schreiben Sie den folgenden Code hinein. Die Echo-Anweisung fordert Sie auf, die erforderlichen Eingaben einzugeben. Die read-Anweisung hat das Schlüsselwort „-a“, um mehrere Werte vom Benutzer zu nehmen und sie in dem einen Variablenarray „NAMES“ zu speichern. Bei der letzten echo-Anweisung werden alle eingegebenen Werte als Array-Mitglieder innerhalb des Strings text ausgegeben.

Beim Ausführen der Datei „input“.sh“, wurde der Benutzer zur Eingabe der Werte aufgefordert. Wenn der Benutzer die Werte eingibt, wurden diese Werte in der Array-Variablen „NAMES“ gespeichert. Nach dem Speichern dieser Werte wird die echo-Anweisung ausgeführt und gibt die eingegebenen Namen als Array-Werte in sich selbst aus, wie gezeigt.

Beispiel 06:

Nehmen wir die gleiche Datei mit kleinen Änderungen im Skript. Wir haben zwei Lesebefehle geschrieben, um Werte von einem Benutzer als Eingabe in einer Shell zu übernehmen und sie in zwei Variablen, „NUM1“ und „NUM2“ gespeichert. Danach wurden beide Variablen ausgedruckt.

Schreiben Sie im Befehlsterminal den Befehl Chmod, um dieser Datei Ausführungsrechte zuzuweisen.

$ chmod +x Eingabe.Sch

Wenn Sie diese Datei mit bash ausführen, werden Sie aufgefordert, nacheinander Zahlen hinzuzufügen. Wenn Sie die erforderlichen Werte eingeben, werden beide Zahlen separat ausgedruckt.

Wenn Sie überprüfen möchten, ob ein Feld oder eine Variable vom Benutzer leer gelassen wurde, können Sie den vorherigen Code wie unten beschrieben aktualisieren. Das Schlüsselwort „-z“ wird verwendet, um beide Variablen auf Leerzeichen zu überprüfen.

Während der Ausführung hat der Benutzer Leerzeichen als Zahl hinzugefügt. Der Benutzer hat eine Nachricht erhalten, dass er es erneut versuchen soll, weil die vom Benutzer eingegebene Variable Leerzeichen enthält.

Versuchen wir den gleichen Code mit einigen Bedingungen über die vom Benutzer eingegebenen Zahlen. Wenn die Benutzereingabe ein anderes als die im folgenden Code genannten Zeichen enthält, wird eine Nachricht übergeben.

Beim Ausprobieren dieses Codes hat ein Benutzer ein Sonderzeichen hinzugefügt, das eine Aufforderungsnachricht generiert.

Fazit

In dieser Anleitung haben Sie an sehr einfachen Beispielen erfolgreich gelernt, wie Sie Benutzereingaben in der Shell veranlassen und die Benutzereingaben interpretieren können.

Microsoft Sculpt Touch Wireless-Maus Bewertung
Ich habe vor kurzem gelesen, dass Microsoft Sculpt Touch kabellose Maus und beschloss, sie zu kaufen. Nachdem ich es eine Weile benutzt hatte, beschlo...
AppyMouse On-Screen Trackpad und Mauszeiger für Windows Tablets
Tablet-Benutzer vermissen oft den Mauszeiger, insbesondere wenn sie die Laptops gewohnt sind. Die Touchscreen-Smartphones und -Tablets bieten viele Vo...
Mittlere Maustaste funktioniert nicht unter Windows 10
Das mittlere Maustaste hilft Ihnen beim Scrollen durch lange Webseiten und Bildschirme mit vielen Daten. Wenn das aufhört, werden Sie am Ende die Tast...