shell中的if語句

2022-05-15 09:08:14 字數 1214 閱讀 7188

語法格式

if command;then

commands

fi其中的command包含如下:

shell command

任何shell命令,如果shell命令返回0,代表true,否則,代表false。並且多個command可以同時作為if的判斷條件,即可以寫為:

if command1;command2;command3;then

commands

fi此時如果command3返回的結果是0,則執行commands,否則不執行,雖然command1和command2也會執行,但是它們執行的返回結果沒有任何影響

test condition 或者 [ condition ]

兩者等價,其中的condition可以是數字比較,可以是字串比較,可以是檔案比較:

數字比較

num1 eq num2 等於

num1 ne num2 不等於

num1 gt num2 大於

num1 ge num2 大於等於

num1 lt num2 小於

num1 le num2 小於等於

字串比較

str1 = str2 等於

str1 != str2 不等於

str1 > str2 大於

str1 < str2 小於

-n str str的長度是否大於0

-z str str的長度是否為0

檔案比較

-d file file是否為目錄

-f file  file是否為檔案

-e file file是否存在

-s file file存在並且不為空

-r file file存在且可讀

-w file file存在且可寫

-x file file存在且可以執行

-o file file存在並且屬於當前使用者

-g file file存在並且屬於當前使用者所在的initial group(也叫default group)

file1 -nt file2 file1是否比file2新

file1 -ot file2 file1是否比file2舊

condition也可以復合的,通過&& 或者 || 連線:

[ condition1 ] && [ condition2]

[ condition1 ] || [condition2 ]

shell 中的if語句

1 2 3 4 if a a 空格用 標示 then echo a a fi 最近幾天寫指令碼,遇到if語句時總是吃不準。這次總結一下。使用if語句有2中方式,一種是使用test命令另一種是使用 其中後者比較常用。方法一,使用test命令,這個命令返回乙個boolean值。1 test e data...

shell中的if語句

語法格式 if command then commands fi其中的command包含如下 shell command 任何shell命令,如果shell命令返回0,代表true,否則,代表false。並且多個command可以同時作為if的判斷條件,即可以寫為 if command1 comma...

shell 中的if語句

bash中如何實現條件判斷?條件測試型別 整數測試 字元測試 檔案測試 一 條件測試的表示式 expression 括號兩端必須要有空格 expression 括號兩端必須要有空格 test expression 組合測試條件 二 整數比較 命令間的邏輯關係 第乙個條件為假 第二個條件不用在判斷,最...