文件比较运算符

文件比较运算符ide

-e filename 若是 filename存在,则为真 [ -e /var/log/syslog ]spa

-d filename 若是 filename为目录,则为真 [ -d /tmp/mydir ]three

-f filename 若是 filename为常规文件,则为真 [ -f /usr/bin/grep ]字符串

-L filename 若是 filename为符号连接,则为真 [ -L /usr/bin/grep ]get

-r filename 若是 filename可读,则为真 [ -r /var/log/syslog ]string

-w filename 若是 filename可写,则为真 [ -w /var/mytmp.txt ]it

-x filename 若是 filename可执行,则为真 [ -L /usr/bin/grep ]io

filename1 -nt  filename2 若是 filename1比 filename2新,则为真 [ /tmp/install/etc/services -nt /etc/services ]class

filename1  -ot  filename2 若是 filename1比 filename2旧,则为真 [ /boot/bzImage -ot arch/i386/boot/bzImage ]file

文件类型有:d表示目录、-表示为普通文件、c表示为字符串设备(鼠标、键盘)、l表示软链接/硬连接、b块设备(光盘、硬盘)、s为用来通讯的=====【一样适用以上比较】


字符串比较运算符 (请注意引号的使用,这是防止空格扰乱代码的好方法)

-z string 若是 string长度为零,则为真 [ -z "$myvar" ]

-n string 若是 string长度非零,则为真 [ -n "$myvar" ]

string1 = string2 若是 string1与 string2相同,则为真 [ "$myvar" = "one two three" ]

string1 != string2 若是 string1与 string2不一样,则为真 [ "$myvar" != "one two three" ]


算术比较运算符

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 ]

相关文章
相关标签/搜索