【发布时间】:2014-07-22 04:31:49
【问题描述】:
请按照以下示例进行(请注意STRING为空)
获取错误
[root@linux /tmp]# STRING=
[root@linux /tmp]# [ $STRING = dog ] && echo "yes its a dog"
bash: [: =: unary operator expected
语法没有错误
[root@linux /tmp]# STRING=
[root@linux /tmp]# [[ $STRING = dog ]] && echo "yes its a dog"
[root@linux /tmp]# [[ $STRING != dog ]] && echo "yes its a dog"
yes its a dog
为什么当我使用单方括号时,我得到 - 需要一元运算符?
但是在双方括号的情况下,语法给出了很好的结果
【问题讨论】: