shell編程之條件語句

shell編程之條件語句

tes命令:

測試特定的表達式是否成,當條件成了時,測試語句的返回值爲0,否則爲其他數值

格式1:test 條件表達式

格式2:[ 條件表達式 ] 注:中括號內前後要有空格

文件測試:

格式:[ 操作符 文件或目錄 ]

常用的測試操作符:

-d:測試是否爲目錄

-e:測試目錄或文件是否存在

-f:測試是否爲文件

-r:測試當前用戶是否有權限讀取

-w:測試當前用戶是否有權限寫入

-x:測試當前用戶是否有權限執行

shell編程之條件語句

判斷單個文件最常用的是‘-f’選項,在比較兩個文件是 ,我們常用的選項有:

-nt: 判斷文件A是否比文件B新

-ot:判斷文件A是否比文件B舊

-ef:判斷兩個文件是否爲同一個文件,用來判斷兩個文件是否指向同一個inode.

整數值比較:

[ 整數1 操作符 整數2 ]

常用的測試操作符:

-eq:等於

-ne:不等於

-lt:小於

-gt:大於

-le:小於或等於

-ge:大於或等於

shell編程之條件語句

字符串比較:

格式1:[ 字符串1 = 字符串2 ]

:[ 字符串1 != 字符串2 ]

格式2:[ -z 字符串]

常用的測試操作符:

=:字符串內容相同

!=:字符串內容不同,!號表示相反的意思

-z : 字符串內容爲空

邏輯測試:

格式1:[ 表達式1 ] 操作符 [ 表達式2 ]...

格式2:命令1 操作符 命令2...

常用的測試操作符:

-a或&&:邏輯與,“而且”的意思

-o或||:邏輯或,“或者”的意思

!:邏輯否(取反)

shell編程之條件語句

[ -d /etc ]etc是否存在 &&且 [ -r /etc ]etc是否可讀 兩個條件都成立才能執行 echo "You can open it"{有一個條件不成立後面就不執行}

[ -d /etc ]etc是否存在 ||或 [ -r /etc ]etc是否可讀,兩個條件一個成立 就所有條件都滿足 可以執行後面的echo 'ok'.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章