【Shell】Linux的判断表达式:-d,-f,-e等

文件比较运算符

表达式         说明                            案例

-e filename    如果filename存在,则为真        [ –e /etc/hosts ]

-d filename    如果filename为目录,则为真      [ –e /etc ]

-f filename    如果filename为常规文件,则为真  [ –f /usr/bin/grep]

-L filename    如果filename为符号链接,则为真  [ –L /usr/bin/grep]

-r filename    如果filename可读,则为真        [ –r /etc/hosts ]

-w filename    如果filename可写,则为真        [ –w /etc/hosts ]

-x filename    如果filename可执行,则为真      [ –x /etc/hosts ]

filename1 –nt filename2   如果filename1比filename2新,则为真 [/usr/test/file1.txt –nt /usr/test/file2.txt]

filename1 –ot filename2   如果filename1比filename2旧,则为真 [/usr/test/file1.txt –ot /usr/test/file2.txt]

字符串比较运算符

-z string      如果string长度为0,则为真        [ –z “$var”]

-n string      如果string长度非0,则为真        [ –n “$var”]

str1=str2      如果str1与str2相同,则为真      [ “$var”=”hello world”]

str1!=str2     如果str1与str2不相同,则为真    [ “$var”!=”hello world”]


算是比较运算符

num1-eq num2 	  等于	       [ 3 -eq $mynum ]
num1-ne num2 不等于 [ 3 -ne $mynum ]
num1-lt num2 小于 [ 3 -lt $mynum ]
num1-le num2 小于或等于 [ 3 -le $mynum ]
num1-gt num2 大于 [ 3 -gt $mynum ]
num1-ge num2 大于或等于 [ 3 -ge $mynum ]





猜你喜欢

转载自www.cnblogs.com/OliverQin/p/10102811.html