從就鍵盤讀取變數的值,通常用在shell指令碼中與使用者進行互動的場合。
該命令可以一次讀取多個變數的值,變數和輸入的值都需要使用空格隔開。
在read命令後面,如果沒有指定變數名,讀取的資料將被自動賦值給特定的變數reply
引數意義/作用
-s隱藏使用者鍵入的值
-p列印提示資訊來提示使用者輸入正確的內容
-t設定使用者輸入的時間限制;超時則退出程式
-n限制使用者輸入內容的長度(單位是字元位)
-r允許使用者輸入特殊字元,如 空格、/、\、?等
語法
read 變數名
使用示例
[root@localhost shell]# read password
admin123.
[root@localhost shell]# echo $password
admin123.
[root@localhost shell]#
語法
read 變數名1 變數名2
使用示例
[root@localhost shell]# read first last
abcde fghij
[root@localhost shell]# echo $first
abcde
[root@localhost shell]# echo $last
fghij
[root@localhost shell]#
引數"-s
"可以將輸入的內容隱藏起來,並賦值給指定的變數
語法
read -s 變數名
使用示例如,read -s password 可將輸入的內容隱藏起來,並賦值給password。場景為輸入使用者密碼
引數-p
可以增加讓輸入的提示資訊
語法
read -p "input your password:" -s pwd
使用示例
[root@localhost shell]# read -p "input your password:" -s pwd
input your password:
[root@localhost shell]# echo $pwd
abcd123456
[root@localhost shell]#
擴充套件通過echo -n
的方式也能實現同樣的提示效果
語法
echo -n "提示資訊"
;read 變數名
使用示例
[root@localhost shell]# echo -n "請輸入:";read content
請輸入:abc
引數-t
可以限制使用者必須在多少秒之內輸入,否則直接退出
語法
read -t 2 變數名
使用示例
[root@localhost shell]# read -t 3 abc
[root@localhost shell]# # 3秒未輸入內容,程式自動退出
引數-n
可以限制使用者輸入的內容的長度(單位是字元數量)
語法
read -n 長度值 變數名
使用示例
[root@localhost shell]# read -n 3 length
abc # 此處,輸入3個字元後,自動退出
[root@localhost shell]#
[root@localhost shell]# echo $length
abc
[root@localhost shell]# read -n 3 len
我是誰[
root@localhost shell]#
[root@localhost shell]# echo $len
我是誰[root@localhost shell]#
由上面兩例可看出,-n 後面跟的長度的單位是字元位
引數-r
引數,允許讓使用者輸入中的內容包括:空格
、/
、\
、?
等特殊符號
語法
read -r 變數名
使用示例
[root@localhost shell]# read -r strange
|\d? abc
[root@localhost shell]# echo $strange
|\d? abc
[root@localhost shell]#
新建read_test.sh
指令碼,內容如下
#! /bin/bash
read -p "請輸入姓名:" name
read -p "請輸入性別:" gender
read -p "請輸入年齡:" age
cat<<
eof********************
你的基本資訊如下:
姓名:$name
性別:$gender
年齡:$age
********************
eof
執行指令碼,結果如下:
Shell程式設計 read命令
1.read 讀取輸入的值 語法 read 選項 值 p 提示語句 n 字元個數 t 等待時間,秒 s 隱藏輸入 2.例子 等待3秒輸入,提示語句please input your name bin bash read t 3 p please input your name name echo n...
shell之read的使用
read命令用於接收鍵盤的標準輸入以及其它檔案的輸入,得到輸入後,read命令會將資料放到乙個標準變數中。示例 1 bin bash read s p enter you password password s 不顯示輸入,p 在read命令列指 echo hello,your password i...
shell指令碼之輸入互動read
這個 read 內部命令被用來從標準輸入讀取單行資料。這個命令可以用來讀取鍵盤輸入,當使用 重定向的時候,讀取檔案中的一行資料。這個命令有以下語法形式 read options variable.這裡的 options 是下面列出的可用選項中的乙個或多個,且 variable 是用來儲存輸入數值的乙...