關於shell指令碼——echo、for語句、while語句、until語句
阿新 • • 發佈:2021-07-14
目錄
一、echo
1.1、echo命令用法
格式:echo [引數] [字串]
常用引數
echo -n 表示輸出不換行
echo -e 輸出轉義字元,將轉義後的內容輸出到螢幕上,後面可以新增很多轉義符
\b相當於退格鍵,但前提是“\b”後存在字元"\b"表示刪除前一個字元"\b\b"表示刪除前兩個字元
\c不換行輸出。後面無字元時相當於 echo -n"\c"後有字元時,將不被輸出
\n換行,但是換行後的新行從“\n”處開始另起一行\f換行,但是換行後的新行的開頭位置連線著上一行的行尾
\v與\f相同
\t轉義後表示插入tab,即橫向製表符\r游標移至行首,但不換行,相當於使用“\r”以後的數字覆蓋之前相等長度的字元
\\表示插入“\”本身
1.2、echo擷取字元
例如a=$(echo "a,b,c,d") 1,echo ${a%,*} 得到的結果為:a,b,c 解析:從最後倒數到最短的匹配部分(用%)後面的逗號的地方被刪除 2,echo ${a%%,*} 得到的結果為:a 解析:從最後倒數到最長的匹配部分(用%%)後面的逗號的地方被刪除 3,echo ${a#*,} 得到的結果為:b,c,d 解析:從開頭到最短的匹配部分(用#)後面的逗號的地方被刪除 4,echo ${a##*,} 得到的結果為:d 解析:從開頭到最長的匹配部分(用##)後面的逗號的地方被刪除
二、for語句
讀取不同的變數值,用來逐個執行同一組命令
for 變數名 in 取值列表
do
命令序列
done
2.1、例項
要求:批量新增幾個使用者,初始密碼為123456,驗證指令碼
建立使用者名稱檔案
建立指令碼檔案
執行指令碼
三、while語句
重複測試某個條件,只要條件成立則反覆執行
while 條件測試操作
do
命令序列
done
3.1、例項
要求:使用者名稱以a開頭,按順序進行編號,一共新增20個使用者,初始密碼設定為123456
建立指令碼檔案
執行指令碼
檢視使用者
四、until語句
重複測試某個條件,只要條件不成立則反覆執行
until 條件測試操作 do 命令序列 done
4.2例項
要求:計算1-50的整數和