Linux 檔案管理 read 命令詳解

2021-08-21 04:44:59 字數 2717 閱讀 5260

read命令從鍵盤讀取變數的值,通常用在shell指令碼中與使用者進行互動的場合。該命令可以一次讀取多個變數的值,變數和輸入的值都需要使用空格隔開。在read命令後面,如果沒有指定變數名,讀取的資料將被自動賦值給特定的變數reply

read(選項)(引數)
引數說明:

下面的列表給出了read命令的常用方式:

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

用定界符「:」結束輸入行。

從標準輸入讀取輸入並賦值給變數1987name。

#read 1987name        #等待讀取輸入,直到回車後表示輸入完畢,並將輸入賦值給變數answer

helloworld #控制台輸入hello

#echo $1987name #列印變數

helloworld

等待一組輸入,每個單詞之間使用空格隔開,直到回車結束,並分別將單詞依次賦值給這三個讀入變數。

#read one two three

1 2 3 #在控制台輸入1 2 3,它們之間用空格隔開。

#echo "one = $one, two = $two, three = $three"

one = 1, two = 2, three = 3

reply示例

#read                  #等待控制台輸入,並將結果賦值給特定內建變數reply。

this is reply #在控制台輸入該行。

#echo $reply #列印輸出特定內建變數reply,以確認是否被正確賦值。

this is reply

-p選項示例

#read -p "enter your name: "            #輸出文字提示,同時等待輸入,並將結果賦值給reply。

enter you name: stephen #在提示文字之後輸入stephen

#echo $reply

stephen

等待控制台輸入,並將輸入資訊視為陣列,賦值給陣列變數friends,輸入資訊用空格隔開陣列的每個元素。

#read -a friends

tim tom helen

#echo "they are $, $ and $."

they are tim, tom and helen.

補充乙個終端輸入密碼時候,不讓密碼顯示出來的例子。

方法1:

#!/bin/bash

read -p "輸入密碼:" -s pwd

echo

echo password read, is "$pwd"

方法2:

#!/bin/bash

stty -echo

read -p "輸入密碼:" pwd

stty echo

echo

echo 輸入完畢。

其中,選項-echo禁止將輸出傳送到終端,而選項echo則允許傳送輸出。

使用read命令從鍵盤讀取變數值,並且將值賦給指定的變數,輸入如下命令:

read v1 v3          #讀取變數值
執行上面的指令以後,要求鍵入兩個資料,如下所示:

linux c+            #輸入資料
完成之後,可以使用echo命令將指定的變數值輸出檢視,輸入如下命令:

echo $v1 $v3       #輸出變數的值
執行輸出變數值的命令以後,將顯示使用者所輸入的資料值,如下所示:

linux c+           #輸出變數值
注意:使用echo命令輸出變數值時,必須在變數名前新增符號$。否則,echo將直接輸出變數名。

Linux基礎read命令

read命令用來傾聽標準輸入或檔案輸入,把資訊存放到變數中。cat test1 bin bash read 用來傾聽使用者的輸入,將輸入的內容儲存到name變數中,使用echo顯示輸入的內容 echo n please input your name read name echo welcome n...

每日linux命令學習 read命令

read命令 作用 從標準輸入中讀取一行。語法 read ers a array d delim i text n nchars n nchars p prompt t timeout u fd name 描述 read 命令從標準輸入中讀取一行,並把輸入行的每個欄位的值指定給 shell 變數。標...

Linux之read命令使用

ead命令 read 命令從標準輸入中讀取一行,並把輸入行的每個欄位的值指定給 shell 變數 1 read後面的變數var可以只有乙個,也可以有多個,這時如果輸入多個資料,則第乙個資料給第乙個變數,第二個資料給第二個變數,如果輸入資料個數過多,則最後所有的值都給最後乙個變數 p read p 提...