shell中if用法詳解
if使用詳解
- 格式
1.單分支語句結構
if [ 條件表達式 ]; then
#command
fi
2.雙分支語句結構
if [ 條件表達式 ]; then
#commannd
else
#command
fi
3.多分支語句結構
if [ 條件表達式 ]; then
#command
elif [ 條件表達式 ]; then
#command
else
#command
fi
- 條件表達式內容
1.字符串判斷
str1 = str2 當兩個串有相同內容杆故、長度時為真
str1 != str2 當串str1和str2不等時為真
-n str1 當串的長度大于0時為真(串非空)
-z str1 當串的長度為0時為真(空串)
str1 當串str1為非空時為真
2.數(shù)字判斷
int1 -eq int2 兩數(shù)相等為真
int1 -ne int2 兩數(shù)不等為真
int1 -gt int2 int1大于int2為真
int1 -ge int2 int1大于等于int2為真
int1 -lt int2 int1小于int2為真
int1 -le int2 int1小于等于int2為真
3.file判斷
-r file 用戶可讀為真
-w file 用戶可讀為真
-x file 用戶可執(zhí)行為真
-f file 文件為正規(guī)文件為真
-d file 文件為目錄為真
-c file 文件為字符特殊文件為真
-b file 文件為塊特殊文件為真
-s file 文件大小非0時為真
-t file 當文件描述符(默認為1)指定的設備為終端時為真
4.復雜邏輯判斷
-a 與
-o 或
! 非