例如:
- #!/bin/bash
- a=1
- b=2
- if [ a -lt b ]
- then
- echo "$a < $b"
- else
- echo "$a > $b"
- fi
对于算术比较运算符:
eq : 等于 例如: 4 -eq 4 如果相等则为真,返回0,之后执行then后语句,反之返回1
ne : 不等于 例如: 4 -eq 4
le : 小于等于 例如: 3 -le 5
ge : 大于等于 例如: 5 -ge $num
lt : 小于 例如: 5 -lt $num
gt : 大于 例如: 5 -gt $num
对于字符串比较:
-z :字符串是否为空串 例如: [ -z $str ] 如果为空串,则为真,返回为0
-n :字符串是否为非空串 例如: [ -n $str ]
= :2个字符串是否相同 例如: [ $str1 = $str2 ]
!= : 2个字符串是否不相同 例如: [ $str1 != $str2 ] 如果2个字符串不同,则为真,返回0
对于文件的判断:
-d filename :判断文件是否为目录 例如:[ -d /etc/passwd ] 如果为目录,则为真
-f filename :判断文件是否为文件 例如:[ -f /etc/passwd ]
-r filename :判断文件是否为可读 例如:[ -r /etc/passwd ]
-x filename :判断文件是否为可执行 例如:[ -x /etc/passwd ]
-w filename :判断文件是否为可写 例如:[ -w /etc/passwd ]
-L filename :判断文件是否为链接文件 例如:[ -L /etc/passwd ]
-e filename :判断文件是否为存在 例如:[ -e /etc/passwd ]
逻辑运算符:
-a : 逻辑与 相当有and , 例如:[ $a -gt 90 -a $a -lt 100 ]
-o : 逻辑或 相当有or 例如:[ $a -gt 90 -o $a -lt 100 ]
! : 逻辑非 例如:[ ! " $ a -gt 90" ]