Wozu dient der Linux-Lesebefehl?

青灯夜游
青灯夜游Original
2023-02-15 10:39:172492Durchsuche

Unter Linux wird der Lesebefehl zum Lesen von Tastatureingaben verwendet. Er kann eine Datenzeile aus der Standardeingabe lesen und den Wert jedes Felds der Eingabezeile einer Shell-Variablen zuweisen read Eine Datenzeile in der Datei, die Syntax lautet „[Parameter] [Name ...] lesen“.

Wozu dient der Linux-Lesebefehl?

Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Dell G3-Computer.

Einführung in den Linux-Lesebefehl

Der Lesebefehl in Linux liest eine Zeile aus der Standardeingabe und weist den Wert jedes Felds der Eingabezeile einer Shell-Variablen zu.

Syntax

read [-ers] [-a aname] [-d delim] [-i text] [-n nchars] [-N nchars] [-p prompt] [-t timeout] [-u fd] [name ...]

Parameters

Parameters Description
-a gefolgt von einer Variablen, die als Array angesehen wird, und dann einen Wert zugewiesen. . Trennzeichen. Auf
-d folgt ein Bezeichner. Tatsächlich ist nur das erste Zeichen danach als Zeichen des Endes nützlich. Auf
-p folgt eine Eingabeaufforderung, d. h. die Eingabeaufforderung wird vor der Eingabe gedruckt.
-e Sie können beim Tippen die Befehlsvervollständigungsfunktion verwenden.
-n gefolgt von einer Zahl definiert die Länge des Eingabetextes, was sehr praktisch ist.
-r Schild, wenn diese Option nicht vorhanden ist, wird sie als Escape-Zeichen verwendet, wenn vorhanden, wird sie als normales Zeichen verwendet.
-s Ruhemodus, wird beim Eingeben von Zeichen, z. B. beim Eingeben eines Passworts beim Anmelden, nicht mehr auf dem Bildschirm angezeigt.
-t gefolgt von Sekunden definiert die Wartezeit für die Zeicheneingabe.
-u gefolgt von fd, liest aus dem Dateideskriptor, der von exec neu geöffnet werden kann.

Beschreibung

Der Befehl „Intern lesen“ wird verwendet, um eine einzelne Datenzeile aus der Standardeingabe zu lesen. Mit diesem Befehl können Sie Tastatureingaben lesen und bei Verwendung der Umleitung eine Datenzeile aus einer Datei lesen.

Beispiel zur Verwendung des Lesebefehls

1. Einfaches Lesen

#!/bin/bash
echo "请您输入网站名: "  
#读取从键盘的输入  
read website  
echo "你输入的网站名是 $website"  
exit 0  #退出

2. Jedes Mal, wenn Sie den Lesebefehl aufrufen, wird „eine Zeile“ Text in der Datei angezeigt wird gelesen. Wenn die Datei keine lesbaren Zeilen enthält, wird der Lesebefehl mit einem Status ungleich Null beendet.

Mit dem Befehl cat können wir die Ergebnisse direkt an den Befehl while übergeben, der den Befehl read enthält.

Der Inhalt der Testdatei test.txt lautet wie folgt:

AAAAAAAAAAAAAAAAAAAAAA

BBBBBBBBBBBBBBBBBBBBBBBB
CCCCCCCCCCCCCCCCCCCCCCCCC

DDDDDDDDDDDDDDDDDDDD
=============== Chuanzhi Podcast


Das Drehbuch ist Wie folgt können Sie das Skript „Gehe zu xxx.sh“ einfügen, um

3 auszuführen. Beispiel:

#!/bin/bash
count=1
cat test.txt | while read line      
# cat 命令的输出作为read命令的输入,read读到>的值放在line中
do
   echo "Line $count:$line"
   count=$[ $count + 1 ]          # 注意中括号中的空格。
done
echo "finish"
exit 0
Fügen Sie ein Beispiel hinzu, bei dem das Passwort nicht angezeigt werden darf, wenn Sie das Passwort eingeben Terminal.

read 1987name
从标准输入读取输入并赋值给变量1987name。
 
read first last
从标准输入读取输入到第一个空格或者回车,将输入的第一个单词放到变量first中,并将该行其他的输入放在变量last中。
 
read
从标准输入读取一行并赋值给特定变量REPLY。
 
read -a arrayname
把单词清单读入arrayname的数组里。
 
read -p "text"
打印提示(text),等待输入,并将输入存储在REPLY中。
 
read -r line
允许输入包含反斜杠。
 
read -t 3
指定读取等待时间为3秒。
 
read -n 2 var
从输入中读取两个字符并存入变量var,不需要按回车读取。
 
read -d ":" var
用定界符“:”结束输入行。

Unter diesen verhindert die Option -echo das Senden von Ausgaben an das Terminal, während die Option echo das Senden von Ausgaben zulässt. Hinweis: Wenn Sie den Echo-Befehl zur Ausgabe von Variablenwerten verwenden, müssen Sie das Symbol $ vor dem Variablennamen hinzufügen. Andernfalls gibt echo den Variablennamen direkt aus.

Verwandte Empfehlungen: „-echo禁止将输出发送到终端,而选项echo则允许发送输出。 

 注意:使用echo命令输出变量值时,必须在变量名前添加符号$Linux-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWozu dient der Linux-Lesebefehl?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn