[Ubuntu-zh] bash脚本中-z和-n问题

leon leon360e在gmail.com
星期二 十二月 20 07:09:33 UTC 2011


在学习bash编程时遇到的问题
讲解中提示bash脚本中
-n 当字符串不为空时为真
-z 当字符串为空时为真

那么以下脚本
str=""

if [ -n $str ]
then
echo "1"
fi

if [ -z $str ]
then
echo "2"
fi

执行时会输出
1
2
为什么会两个都输出呢?
str为空同时也不为空??
还是我理解有误或者设置有误??
————
如果说我们是浪漫主义者,是不可救药的理想主义分子,我们想的都是不可能的事情,那么,我们将一千零一次的回答,是的,我们就是这样的人。忠于理想,面对现实。

若为自由故,需有过墙梯 <http://goo.gl/5liFC>
-------------- 下一部分 --------------
一个HTML附件被移除...
URL: <https://lists.ubuntu.com/archives/ubuntu-zh/attachments/20111220/ed116556/attachment.html>


关于邮件列表 ubuntu-zh 的更多信息