編寫Shell管理腳本

編寫Shell管理腳本(二)
一、if語句
1,條件測試
test  測試表達式是否成立,成立結果爲0
①,測試文件狀態
 -d 是否爲目錄
 -e 目錄或文件是否存在
 -f 是否爲文件
 -r 當前用戶是否有權限讀取
 -w 當前用戶是否有權限寫入
 -x 當前用戶是否可執行該文件
 -L 是否爲符號連接文件
②,數值比較
 -eq 等於
 -ne 不等於
 -gt 大於
 -lt 小於
 -le 小於或等於
 -ge 大於或等於
Equal   等於
Not Equal  不等於
Greater Than 大於
Lesser Than 小於
Lesser or Equal 小於或等於
Greater or Equal大於或等於
③,字符串比較
  = 內容相同
 != 內容不同,! 號表示相反的意思
 -z 內容爲空
④,條件判斷
-a或&& 邏輯與
 前後表達式都成立時整個測試結果才爲真,否則爲假
-o或|| 邏輯或
 操作符兩邊至少一個爲真時,結果爲真,否則結果爲假
! 邏輯否
 當指定的條件不成立時,返回結果爲真
2,if語句格式
①,單分支
if  條件測試命令
    then   命令序列
fi
②,雙分支
if  條件測試命令
    then   命令序列1
    else   命令序列2
fi
③,多分支
if  條件測試命令1  ;  then
    命令序列1
elif  條件測試命令2  ;  then
    命令序列2
elif  ...
else
    命令序列n
fi
二、for語句(根據變量的不同取值,重複執行一組命令操作)
1,語法
for  變量名  in  取值列表
do
     命令序列
done
三、while語句(重複測試指定的條件,只要條件成立則反覆執行對應的命令操作)
1,語法
 while  命令或表達式
 do
            命令列表
 done
四、其他控制語句
1,case多分支
case  變量值  in
    模式1)
           命令序列1
           ;;
    模式2)
          命令序列2
           ;;
  ……
    * )
          默認執行的命令序列
esac
2,until循環語句
until  條件測試命令
do
      命令序列
done
3,shift遷移語句
遷移位置變量,將 $1~$9 依次向左傳遞
4,break語句
在for、while、until等循環語句中,用於跳出當前所在的循環體,執行循環體後的語5,continue
在for、while、until等循環語句中,用於跳過循環體內餘下的語句,重新判斷條件以便執行下一次循環句
五、Shell函數應用
1,語法
function 函數名 {
  命令序列
}
或者
函數名() {
  命令序列
}
2,調用函數
函數名
3,向函數內傳遞參數
函數名  參數1  參數2  ...
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章