So verwenden Sie den Befehl read in bash

So verwenden Sie den Befehl read in bash
In Bash Scripting, die “lesenDer Befehl ”wird verwendet, um Eingaben von Benutzern zu erhalten. Das Verständnis des Befehls „Lesen“ ist der Schlüssel, um Ihren Code interaktiver zu gestalten. Der Befehl „Lese“ wird verwendet, um eingegebene Informationen vom Benutzer zu erhalten. Dieser Artikel zeigt, wie Sie den Befehl „Lese“ in Bash verwenden, um mit den Benutzern zu interagieren.

Schauen Sie sich zunächst die grundlegende Syntax des Befehls „Read“ an:

[Option] Variable lesen

Wenn Sie den Befehl „Lesen“ verwenden, interagieren Sie mit Bash, um Informationen vom Benutzer zu erhalten. Es spart den Wert in einer Variablen, aber ohne “$" Zeichen. Sie werden dieses Konzept mit einem Beispiel besser verstehen können.

Beispiel 1: Verwenden Sie den Befehl „Lesen“ in einem Bash -Skript

Um den Befehl „Lese“ zu untersuchen, erstellen wir ein einfaches Skript, das nach dem Namen des Benutzers fragt. Öffnen Sie zunächst jeden Texteditor; Für dieses Tutorial verwende ich den VIM -Texteditor aufgrund seiner vielen nützlichen Funktionen. Um VIM zu installieren, führen Sie den folgenden Befehl im Terminal aus:

$ sudo apt install Vim

Geben Sie als Nächstes Folgendes in die Textdatei ein:

#! \ bin \ bash
Echo „Bitte geben Sie Ihren Namen ein“
Name lesen
Echo "dein Name ist" $ name

Speichern Sie die Datei mit einem beliebigen Namen und drücken Sie dann drücken Sie dann Esc und Typ “: W Readcom.Sch.Um das Skript auszuführen, geben Sie den folgenden Befehl aus:

$ Bash Readcom.Sch

Das obige Skript wird den Benutzer auffordern, seinen Namen zu schreiben. Mit dem Befehl „Lesen“ speichert die Eingabe vom Benutzer. In der nächsten Zeile wird der Name gedruckt, den der Benutzer eingibt.

Beispiel 2: Vereinfachung des Codes mit dem Bediener "Eingabeaufforderung"

Das obige Beispiel kann mit der “weiter vereinfacht werdenprompt" Operator. Lassen Sie uns das obige Beispiel neu schreiben, um den Code zu verstehen:

#! /Bin/Bash
Lesen Sie -p "Bitte geben Sie Ihren Namen ein" Name
Echo "dein Name ist" $ name

Beispiel 3: Verstecken der Benutzereingabe mit dem Operator „Geheimnis/Silent“

Der "-SFlag kann verwendet werden, um die Eingabe des Benutzers zu verbergen. Das folgende Bash-Skript-Beispiel zeigt Ihnen, wie Sie den Operator „-S“ verwenden:

#! /Bin/Bash
Lesen Sie -p "Bitte geben Sie Ihren Benutzernamen ein" Benutzername
Lesen Sie -s -p "Bitte geben Sie Ihr Passwort ein" $ Passwort

Beispiel 4: Begrenzung der Charakterlänge

Der "-NFlag kann verwendet werden, um der Anzahl der Zeichen, die der Benutzer eingeben kann, eine Einschränkung hinzuzufügen.

#!/Bin/Bash
Lesen Sie -n 8 -p "Bitte geben Sie Ihren Benutzernamen nicht über 8 Zeichen ein" Benutzername nicht überschreiten. "
Echo "Dein Benutzername ist" $ userername

Mit der Option "-n" kann der Benutzer immer noch weniger als acht Zeichen schreiben. Um die Eingangslänge weiter einzuschränken, die “-NDas Flag kann verwendet werden, was die Antwort des Benutzers auf genau acht Zeichen beschränkt.

Beispiel 5: Erhalten Sie die Eingabe in einem Array

Die Benutzereingabe kann auch in einem Array mit der “eingenommen werden-A" Flagge. Um beispielsweise den Namen, das Alter und die E -Mail -Adresse des Benutzers auf einmal zu erhalten, können wir ein Array verwenden. Schauen wir uns ein Beispiel an:

#! /Bin/Bash
Echo „Bitte geben Sie Ihren Namen, Ihr Alter und Ihre E -Mail ein“
Lesen Sie -a Array Name Age E -Mail
Echo "Ihr Name, Alter und E -Mail -Adresse sind: $ Array [@] Name Alter E -Mail"
Echo "Ihr Name und Alter sind: $ Array [@]: 0: 1 Name Alter"
Echo "Ihre E -Mail -Adresse lautet: $ Array [2] E -Mail"
  • "$ Array [@]" wird alle Variablen durchlaufen.
  • Verwenden Sie „$ Array [@]: 0: 1“ mit den Variablennamen, um die Indizes 0 bis 1 zu durchzusetzen.
  • Verwenden Sie „$ Array [2]“ mit dem variablen Namen, um den Wert einer bestimmten Variablen bei einem bestimmten Index zu erhalten.

Beispiel 6: Hinzufügen einer Auszeit zum Befehl "Lesen"

Wie der Name des Befehls anzeigt, kann eine Zeitüberschreitung als Bedingung für das Lesen des Codes mit dem Flag „-t“ hinzugefügt werden, wodurch der Benutzer Informationen für eine bestimmte Zeit eingibt. Andernfalls wechselt das Programm in die nächste Codezeile.

#! \ bin \ bash
Echo „Was ist die Hauptstadt Japans?? Antwort in 5 Sekunden “
Lesen Sie -t 5 Antwort
Wenn ["$ beantwortet" = "Tokio"] || ["$ Beantwortet" = "Tokio"];
Dann
Echo „Ihre Antwort ist korrekt!”
anders
Echo „Deine Antwort ist falsch!”
fi

Abschluss

Das Erhalten von Eingaben von einer Benutzereingabe ist einer der wichtigsten Teile der Programmierung, wodurch Ihre Programme interaktiver werden. Dieser Artikel hat Ihnen gezeigt. In diesem Artikel haben Sie einige der verschiedenen Ansätze erfahren, die Sie mit dem Befehl „Lesen“ verwenden können, von grundlegenden Flaggenbetreibern bis hin zu fortgeschrittenen Operatoren.