條件測試
1、文件測試
2、整數測試
3、字符串與邏輯測試
if語句:
if單分支語句
if雙分支語句
if多分支語句
if嵌套語句
test命令:
測試特定的表達式 是否成立,當條件成立時,測試語句的返回值爲0,否則爲其他數值。
格式1:test 條件表達式
格式2:[ 條件表達式 ] //注意有空格
文件測試
文件測試是指的是根據給定的路徑名稱,判斷對應的是文件還是目錄,或者判斷文件是否可讀、可寫、可執行等。
常用的測試操作符:
-d:測試是否爲目錄(Directory)
-e:測試目錄或文件是否存在(Exist)
-f:測試是否爲文件(File)
-r:測試當前用戶是否有權限讀取(Read)
-w:測試當前用戶是否有權限寫入(Write)
-x:測試當前用戶是否有權限執行(eXcute)
實際操作:
格式一:
test -d /etc/sysconfig (測試/etc裏的sysconfig目錄是否存在)
echo $?(輸出值爲0,則條件成立)
格式二:
[ -d /etc/sysconfig ]
echo $?(輸出值爲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 字符串]
常用的測試i操作符:
=:字符串內容相同
!=:字符串內容不同,!表示相反的意思
-z:字符串內容爲空
邏輯測試
格式1:[ 表達式1 ] 操作符 [ 表達式2 ] ...
格式2:命令1 操作符 命令2 ...
常用操作選項
-a或&&:邏輯與,“而且”的意思
-o或||:邏輯或,“或者”的意思
!:邏輯否,表示“不”的意思
if語句:
單分支結構:
if 條件測試操作
then
命令序列
fi
雙分支結構:
if 條件測試操作
then
命令序列1
else
命令序列2
fi
多分支結構:
if 條件測試操作
then
命令序列1
elif 條件性測試操作2
then
命令序列2
else
命令序列3
fi
if嵌套語句:
實驗目的:進行跑步比賽,10秒內進入決賽,輸入性別後,分別提示進入男子組還是女子組,使用多重判斷,嵌套if實現