Bash Read -Befehl

Bash Read -Befehl
Bash hat keine integrierte Funktion, um die Eingabe des Benutzers aus dem Terminal zu übernehmen. Der lesen Der Befehl Bash wird verwendet, um die Eingabe des Benutzers aus dem Terminal zu nehmen. Dieser Befehl hat unterschiedliche Optionen, um eine Eingabe vom Benutzer auf unterschiedliche Weise zu nehmen. Mehrere Eingänge können mit der Single eingenommen werden lesen Befehl. In diesem Tutorial werden verschiedene Möglichkeiten zur Verwendung dieses Befehls im Bash -Skript beschrieben.

Syntax

Lesen Sie [Optionen] [var1, var2, var3…]

Der lesen Der Befehl kann ohne Argument oder Option verwendet werden. Mit diesem Befehl können viele Arten von Optionen verwendet werden, um die Eingabe des jeweiligen Datentyps zu erhalten. Es kann mehr Eingaben vom Benutzer erfolgen, indem die mehreren Variablen mit diesem Befehl definiert werden.

Einige nützliche Optionen des Read -Befehls

Einige Optionen von das Lesen Der Befehl erfordern einen zusätzlichen Parameter, der verwendet wird. Die am häufigsten verwendeten Optionen der lesen Der Befehl ist im Folgenden erwähnt:

Möglichkeit Zweck
-D Es wird verwendet, um den Eingang zu nehmen, bis der Trennzeichenwert bereitgestellt wird.
-N Es wird verwendet, um die Eingabe einer bestimmten Anzahl von Zeichen aus dem Terminal einzunehmen und die Eingabe früher auf der Grundlage des Trennzeichens zu beenden.
-N Es wird verwendet, um die Eingabe der bestimmten Anzahl von Zeichen aus dem Terminal zu nutzen und den Trennzeichen zu ignorieren.
-P Es wird verwendet, um die Ausgabe der Eingabeaufforderung vor der Eingabe der Eingabe auszudrucken.
-S Es wird verwendet, um die Eingabe ohne Echo zu nehmen. Diese Option wird hauptsächlich verwendet, um die Eingabe für die Kennworteingabe zu erhalten.
-A Es wird verwendet, um die Eingabe für das indizierte Array zu nehmen.
-T Es wird verwendet, um ein Zeitlimit für die Eingabe der Eingabe festzulegen.
-u Es wird verwendet, um die Eingabe aus der Datei zu nehmen.
-R Es wird verwendet, um die Backslashes zu deaktivieren.

Verschiedene Beispiele für den Befehl Read

Die Verwendung von lesen Der Befehl mit verschiedenen Optionen wird in diesem Teil dieses Tutorials angezeigt.

Beispiel 1: Verwenden Sie den Befehl lese ohne Option und Variable

Erstellen das Lesen Befehl ohne Option und Variable. Wenn keine Variable mit dem verwendet wird lesen Befehl, der Eingangswert wird in der gespeichert $ Antwort Variable. Der Wert dieser Variablen wird später nach der Eingabe der Eingabe gedruckt.

#!/Bin/Bash
#Print der Eingabeaufforderung Nachricht
Echo "Geben Sie Ihre Lieblingsfarbe ein:"
#Stake den Eingang
lesen
#Printieren Sie den Eingangswert
echo "Deine Lieblingsfarbe ist $ reagieren"

Ausgang:

Die folgende Ausgabe erscheint, wenn die “BlauDer Wert wird als Eingabe angenommen:

Beispiel 2: Verwenden Sie den Befehl read mit einer Variablen

Erstellen das Lesen Befehl mit einer Variablen. Die Methode zur Einnahme der einzelnen oder mehrere Variablen mit a lesen Der Befehl wird in diesem Beispiel angezeigt. Die Werte aller Variablen werden später gedruckt.

#!/Bin/Bash
#Print der Eingabeaufforderung Nachricht
Echo "Geben Sie den Produktnamen ein:"
#Schieren Sie die Eingabe mit einer einzelnen Variablen
Artikel lesen
#Print der Eingabeaufforderung Nachricht
Echo "Geben Sie die Farbvariationen des Produkts ein:"
#Take drei Eingabewerte in drei Variablen
Lesen Sie Color1 color2 color3
#Printieren Sie den Eingangswert
echo "Der Produktname ist $ itsel."
#Prinke die Eingabewerte
Echo "verfügbare Farben sind $ color1, $ color2 und $ color3."

Ausgang:

Die folgende Ausgabe erscheint nach einer einzelnen Eingabe zuerst und drei Eingaben später:

Beispiel 3: Verwenden Sie den Befehl read mit -P -Option

Erstellen das Lesen Befehl mit einer Variablen und der -P Möglichkeit. Der Eingangswert wird später gedruckt.

#!/Bin/Bash
#Schieren Sie die Eingabe mit der Eingabeaufforderung Nachricht
Lesen Sie -p "Geben Sie den Buchnamen ein:" Buch
#Printieren Sie den Eingangswert
Echo "Buchname: $ Book"

Ausgang:

Die folgende Ausgabe erscheint nach der Eingabe:

Beispiel 4: Verwenden Sie den Befehl read mit -S -Option

Erstellen das Lesen Befehl mit einer Variablen und der -S Möglichkeit. Der Eingangswert des Passworts wird für die Option -S nicht angezeigt. Die Eingabewerte werden später auf die Authentifizierung überprüft. Eine Erfolgs- oder Fehlermeldung wird ebenfalls gedruckt.

#!/Bin/Bash
#Schieren Sie die Eingabe mit der Eingabeaufforderung Nachricht
Lesen Sie -p "Geben Sie Ihre E -Mail ein:" E -Mail
#Take die geheime Eingabe mit der Eingabeaufforderung Nachricht
Lesen Sie -sp "Geben Sie Ihr Passwort ein:" Passwort
#Add Newline
echo "" "
#Überprüfen Sie die E -Mail und das Passwort für die Authentifizierung
Wenn [[$ mail == "[email protected] "&& $ password ==" Geheimnis "]]]
Dann
#Print der Erfolgsnachricht
echo "authentifiziert."
anders
#Print der Fehlermeldung
echo "nicht authentifiziert."
fi

Ausgang:

Die folgende Ausgabe erscheint nach Einnahme der gültigen und ungültigen Eingabewerte:

Beispiel 5: Verwenden Sie den Befehl read mit -a Option

Erstellen das Lesen Befehl mit einer Variablen und der -A Möglichkeit. Die Array -Werte werden später nach der Entnahme der Eingabewerte aus der Klemme gedruckt.

#!/Bin/Bash
Echo "Geben Sie die Ländernamen ein:"
#Mehrere Eingänge mit einem Array einsetzen
Lesen Sie -a Länder
Echo "Landnamen sind:"
#Lesen Sie die Array -Werte
für Land in $ Ländern [@]
Tun
Echo $ Country
Erledigt

Ausgang:

Die folgende Ausgabe erscheint nach der Einnahme der Array -Werte:

Beispiel 6: Verwenden Sie den Befehl read mit -noption verwenden

Erstellen das Lesen Befehl mit einer Variablen und der -N Möglichkeit.

#!/Bin/Bash
#Print der Eingabeaufforderung Nachricht
Echo "Geben Sie den Produktcode ein:"
#Take die Eingabe von fünf Zeichen
Lesen Sie -n 5 Code
#Add Newline
echo "" "
#Printieren Sie den Eingangswert
Echo "Der Produktcode ist $ Code"

Ausgang:

Die folgende Ausgabe erscheint, wenn die “78342Wert wird als Eingabe angenommen:

Beispiel 7: Verwenden Sie den Befehl read mit -t -Option

Erstellen lesen Befehl mit einer Variablen und der -T Möglichkeit.

#!/Bin/Bash
#Print der Eingabeaufforderung Nachricht
echo -n "Schreiben Sie das Ergebnis von 10-6:"
#Take die Eingabe von fünf Zeichen
Lesen Sie -t 3 Antwort
#Überprüfen Sie den Eingangswert
Wenn [[$ Antwort == "4"]]]
Dann
Echo "Richtige Antwort."
anders
echo "falsche Antwort echo."
fi

Ausgang:

Die folgende Ausgabe erscheint nach der Einnahme der richtigen und falschen Eingabestalte:

Abschluss

Die Verwendung einiger nützlicher Optionen der lesen Der Befehl wird in diesem Tutorial mit mehreren Beispielen erläutert, um die grundlegenden Verwendungen der lesen Befehl.