一、概述
read命令特點:接收標準輸入(鍵盤)的輸入,或其他檔案描述符的輸入,得到輸入後,然後將資料儲存乙個標準變數中。
二、引數的說明--->按照重要性進行說明
-p:prompt;用於給出提示符---->場景:提示使用者輸入的內容
-s:slient;安靜模式---->場景:輸入密碼不回顯
-t:time;單位是second----->場景:當計時滿時,read命令返回乙個非零退出狀態
-d:delimiter,即定界符,一般情況下是 以ifs為引數的間隔(換行)->場景:讀到自定義的字元(有效字元)的時候就不在繼續向後讀
-e:在輸入的時候進行命令補全功能
-a:array;後跟變數會被認為是個陣列,預設是以空格為分割符,儲存的起始位置從陣列的index=0開始!
-r:禁止反斜線的轉義功能,這意味著"\"會變成文字的一部分
三、應用的場景(實際案例不再貼圖)
(1)沒有指定變數時:會用環境變數reply來作為變數
(2)讀檔案:每次呼叫read命令都會讀取檔案中的"一行"文字。當檔案沒有可讀的行時,read命令將以非零狀態退出。讀取檔案的關鍵是如何將文字中的資料傳送給read命令。最常用的方法是對檔案使用cat命令並通過管道將結果直接傳送給包含read命令的while命令
#!/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
每天乙個Linux命令
將我遇到的linux指令總結一下,不斷增加 1 sz和rz 一般來說,linux 伺服器大多是通過 ssh客戶端來進行遠端的登陸和管理的,使用 ssh登陸 linux ssh有關的兩個命令可以提供很方便的操作 sz 將選定的檔案傳送 send 到本地機器 rz 執行該命令會彈出乙個檔案選擇視窗,從本...
每天乙個linux命令
linux cmp命令 linux cmp命令用於比較兩個檔案是否有差異。當相互比較的兩個檔案完全一樣時,則該指令不會顯示任何資訊。若發現有所差異,缺省會標示出第乙個不同之處的字元和列數編號。若不指定任何檔名稱或是所給予的檔名為 則cmp指令會從標準輸入裝置讀取資料。語法cmp clsv i 字元數...
每天乙個 Linux 命令
head 與 tail 就像它的名字一樣的淺顯易懂,它是用來顯示開頭或結尾某個數量的文字區塊,head 用來顯示檔案的開頭至標準輸出中,而 tail 想當然爾就是看檔案的結尾。1 命令格式 head 引數 檔案 2 命令功能 head 用來顯示檔案的開頭至標準輸出中,預設head命令列印其相應檔案的...