Linux 命令大全
Linux read命令用于從標準輸入讀取數(shù)值。
read 內(nèi)部命令被用來從標準輸入讀取單行數(shù)據(jù)。這個命令可以用來讀取鍵盤輸入linux命令大全,當使用重定向的時候,可以讀取文件中的一行數(shù)據(jù)。
read [-ers] [-a aname] [-d delim] [-i text] [-n nchars] [-N nchars] [-p prompt] [-t timeout] [-u fd] [name ...]
參數(shù)說明:
1、簡單讀取
#!/bin/bash #這里默認會換行 echo "輸入網(wǎng)站名: " #讀取從鍵盤的輸入 read website echo "你輸入的網(wǎng)站名是 $website" exit 0 #退出
測試結(jié)果為:
輸入網(wǎng)站名: www.runoob.com 你輸入的網(wǎng)站名是 www.runoob.com
2、-p 參數(shù),允許在 read 命令行中直接指定一個提示。
#!/bin/bash read -p "輸入網(wǎng)站名:" website echo "你輸入的網(wǎng)站名是 $website" exit 0
測試結(jié)果為:
輸入網(wǎng)站名:www.runoob.com 你輸入的網(wǎng)站名是 www.runoob.com
3、-t 參數(shù)指定 read 命令等待輸入的秒數(shù),當計時滿時linux命令大全,read命令返回一個非零退出狀態(tài)。
#!/bin/bash if read -t 5 -p "輸入網(wǎng)站名:" website then echo "你輸入的網(wǎng)站名是 $website" else echo "\n抱歉,你輸入超時了。" fi exit 0
執(zhí)行程序不輸入,等待 5 秒后:
輸入網(wǎng)站名: 抱歉,你輸入超時了
4、除了輸入時間計時,還可以使用 -n 參數(shù)設置 read 命令計數(shù)輸入的字符。當輸入的字符數(shù)目達到預定數(shù)目時,自動退出,并將輸入的數(shù)據(jù)賦值給變量。
#!/bin/bash read -n1 -p "Do you want to continue [Y/N]?" answer case $answer in Y | y) echo "fine ,continue";; N | n) echo "ok,good bye";; *) echo "error choice";; esac exit 0
該例子使用了-n 選項,后接數(shù)值 1,指示 read 命令只要接受到一個字符就退出。只要按下一個字符進行回答,read 命令立即接受輸入并將其傳給變量,無需按回車鍵。
只接收 2 個輸入就退出:
#!/bin/bash read -n2 -p "請隨便輸入兩個字符: " any echo "\n您輸入的兩個字符是:$any" exit 0
執(zhí)行程序輸入兩個字符:
請隨便輸入兩個字符: 12 您輸入的兩個字符是:12
5、-s 選項能夠使 read 命令中輸入的數(shù)據(jù)不顯示在命令終端上(實際上,數(shù)據(jù)是顯示的,只是 read 命令將文本顏色設置成與背景相同的顏色)。輸入密碼常用這個選項。
#!/bin/bash read -s -p "請輸入您的密碼:" pass echo "\n您輸入的密碼是 $pass" exit 0
執(zhí)行程序輸入密碼后是不顯示的:
請輸入您的密碼: 您輸入的密碼是 runoob
6.讀取文件
每次調(diào)用 read 命令都會讀取文件中的 "一行" 文本。當文件沒有可讀的行時,read 命令將以非零狀態(tài)退出。
上一個教程:Linux下常用命令,并與DOS下命令的對比
下一個教程:Linux基本命令課程視頻(上)