一、文件測試
二、整數值比較
三、字符串與邏輯測試ide
·測試
if語句:
單分支的if語句
雙分支的if語句
多分枝的if語句code
·字符串
文件測試是指的是根據給定的路徑名稱,判斷對應的是文件仍是目錄,或者判斷文件是否可讀、可寫、可執行等。it
基本格式table
test 條件表達式 或者 [ 條件表達式 ]
文件的常見操做選項以下: class
選項 | 描述 |
---|---|
-d | 測試是否爲目錄(Directory) |
-e | 測試目錄或文件是否存在(Exist) |
-f | 測試是否爲文件(File) |
-r | 測試當前用戶是否有權限讀取(Read) |
-w | 測試當前用戶是否有權限寫入(Write) |
-x | 測試是否設置有可執行(Excute)權限 |
執行以上操做以後,能夠經過「$?」能夠得到測試命令的返回狀態值,從而判斷是否成立test
格式一變量
test -d /etc/sysconfig (測試/etc裏的sysconfig目錄是否存在) echo $?(返回值爲0,則條件成立)
格式二權限
[ -d /etc/sysconfig ] echo$(若條件不成立,測試值將不爲0(一般爲1))
整數值比較
格式格式:[ 整數1 操做符 整數2 ]
經常使用操做選項
一、-eq:等於(Equal) 二、-ne:不等於(Not Equal) 三、-gt:大於(Greater Than) 四、-lt:小於(Lesser Than) 五、-le:小於或等於(Lesser or Equal) 六、-ge:大於或等於(Greater or Equal)
字符串比較
格式1:[ 字符串1 = 字符串2 ] [ 字符串1 ! = 字符串2 ] 格式2:[ -z 字符串]
經常使用操做選項
一、=:第一個字符串與第二個字符串相同 二、!=:第一個字符串與第二個字符串不相同,其或中「!」符號取反 三、-z:檢查字符串是否爲空,對於未定義或賦予空值的變量將視爲空串
邏輯測試
格式1:[ 表達式1 ] 操做符 [ 表達式2 ] ... 格式2:命令1 操做符 命令2 ...
經常使用操做選項
一、-a或&&:邏輯與,「並且」的意思 二、-o或||:邏輯或,「或者」的意思 三、!:邏輯否,表示「不」的意思
if語句
單分支結構
if 條件測試操做 then 命令序列 fi
雙分支結構
if 條件測試操做 then 命令序列1 then 命令序列2 fi
多分枝結構
if 條件測試操做 then 命令序列1 elif 條件性測試操做2 then 命令序列2 else 命令序列3 fi