Shell腳本之條件語句

條件測試

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,則條件成立)
Shell腳本之條件語句

格式二:

[ -d /etc/sysconfig ]
echo $?(輸出值爲1,則條件不成立)
Shell腳本之條件語句

整數值比較:
格式:[ 整數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
Shell腳本之條件語句
Shell腳本之條件語句

雙分支結構:

if 條件測試操作
then
命令序列1
else
命令序列2
fi
Shell腳本之條件語句
Shell腳本之條件語句

多分支結構:

if 條件測試操作
then
命令序列1
elif 條件性測試操作2
then
命令序列2
else
命令序列3
fi
Shell腳本之條件語句
Shell腳本之條件語句

if嵌套語句:

實驗目的:進行跑步比賽,10秒內進入決賽,輸入性別後,分別提示進入男子組還是女子組,使用多重判斷,嵌套if實現
Shell腳本之條件語句
Shell腳本之條件語句

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