条件判断式的表示格式:
文件判断式:
[root@andon ~]# [ -e /root/1 ] && echo yes || echo no #注意[]里面的空格,第一个命令为真打印yes,否则打印no
yes
[root@andon ~]# [ -f /root/1 ] && echo yes || echo no
yes
[root@andon ~]# [ -d /root/1 ] && echo yes || echo no
no
文件权限判断式:
[root@andon ~]# [ -r /root/1 ] && echo yes || echo no
yes
[root@andon ~]# [ -x /root/1 ] && echo yes || echo no
no
[root@andon ~]# [ -w /root/1 ] && echo yes || echo no
yes
文件比较判断式:
[root@andon ~]# [ /root/1 -nt /root/2 ] && echo yes || echo no
no
[root@andon ~]# [ /root/1 -ot /root/2 ] && echo yes || echo no
yes
[root@andon ~]# [ /root/1 -ef /root/2 ] && echo yes || echo no
no
[root@andon ~]# ln 1 3
[root@andon ~]# [ /root/1 -ef /root/3 ] && echo yes || echo no
yes
整数比较判断式:
[root@andon ~]# [ 4 -eq 4 ] && echo yes || echo no #等于
yes
[root@andon ~]# [ 4 -ne 4 ] && echo yes || echo no ##不等于
no
[root@andon ~]# [ 5 -gt 4 ] && echo yes || echo no ##大于
yes
[root@andon ~]# [ 5 -lt 4 ] && echo yes || echo no ##小于
no
[root@andon ~]# [ 5 -ge 4 ] && echo yes || echo no ##大于等于
yes
[root@andon ~]# [ 5 -le 4 ] && echo yes || echo no ##小于等于
no
字符串判断式:
[root@andon ~]# [ -z $a ] && echo yes || echo no ##判断为空
no
[root@andon ~]# [ -n $a ] && echo yes || echo no ##判断非空
yes
[root@andon ~]# b=abc
[root@andon ~]# [ $a == $b ] && echo yes || echo no
yes
[root@andon ~]# [ $a != $b ] && echo yes || echo no
no
多重条件判断式:
[root@andon ~]# [ -n $b -a -z $a ] && echo yes || echo no ##与
no
[root@andon ~]# [ -n $b -o -z $a ] && echo yes || echo no ##或
yes