下表列出了常用的字符串运算符,假定变量 a 为 "zgy",变量 b 为 "ldy":
示例代码如下
#!/bin/bash a="zgy" b="ldy" if [ $a = $b ] then echo "$a = $b : a 等于 b 返回true" else echo "$a = $b: a 不等于 b 返回false" fi if [ $a != $b ] then echo "$a != $b : a 不等于 b 返回true" else echo "$a != $b: a 等于 b 返回false" fi if [ -z $a ] then echo "-z $a : 字符串长度为 0 返回true" else echo "-z $a : 字符串长度不为 0 返回false" fi if [ -n $a ] then echo "-n $a : 字符串长度不为 0 返回true" else echo "-n $a : 字符串长度为 0 返回false" fi if [ $a ] then echo "$a : 字符串不为空 返回true" else echo "$a : 字符串为空 返回false" fi
执行后结果如下
注释:单看执行结果写的返回true或者返回false,看上去感觉会很怪异,并且和逻辑不通,因为我是拿来注释一下他的返回。所以造成把结果连成一句话来看就是不通的,但是您去理一遍之后把代码敲一遍,相信您就会理解了。
若是不理解,试一试把返回true和返回false去掉,然后去看。