1. 程式人生 > 其它 >關於shell指令碼——echo、for語句、while語句、until語句

關於shell指令碼——echo、for語句、while語句、until語句

目錄

一、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的整數和

建立指令碼檔案

執行指令碼