在 bash 中考虑以下内容:
root@debian-lap:/tmp I=$(echo)
root@debian-lap:/tmp echo "$I"
root@debian-lap:/tmp [ -z "$I" ] && echo "TRUE" || echo "FALSE"
TRUE
Run Code Online (Sandbox Code Playgroud)
这意味着变量 $I 是zero。我可以通过否定测试实现相同的目的,以查看变量是否为非零,!并使测试反向,因此它检查变量zero
root@debian-lap:/tmp ! [ -n "$I" ] && echo "TRUE" || echo "FALSE"
TRUE
root@debian-lap:/tmp
Run Code Online (Sandbox Code Playgroud)
所以,我的问题是,当使用-zand时是否有任何特殊情况! -n,反之亦然! -z,-n因为它们基本上都在进行相同的测试?
谢谢