Chinaunix

标题: echo 问题!!!!!!! [打印本页]

作者: newsecond    时间: 2007-06-13 17:19
标题: echo 问题!!!!!!!
bash$ echo $(( 1 && 2 )) $((3 && 0)) $((4 || 0)) $((0 || 0))
1 0 1 0
             
上面 echo $(( 1 && 2 )) $((3 && 0)) $((4 || 0)) $((0 || 0))
是什么意思??
作者: marion    时间: 2007-06-13 17:32
应该是些逻辑运算,而echo只不过是返回这些运算的结果

$(( 1 && 2 )):求1和2“与”运算的结果
$((3 && 0))
$((4 || 0)) :求4和0“或”运算的结果
$((0 || 0))

我想至此,答案已经明了了。希望对你有所帮助。
作者: newsecond    时间: 2007-06-13 23:55
谢谢楼上的
小的愚昧...在此请教下.
((1&&2))---->它的返回值是0
但为什么 echo $((1&&2)的值为1呢???????


在次问下...1 && 2怎么计算...

小弟初学.....麻烦大家了

[ 本帖最后由 newsecond 于 2007-6-14 10:00 编辑 ]
作者: newsecond    时间: 2007-06-15 10:46
帮帮忙吧,,,,,麻烦大家,,,抽点时间在这上面写几个字吧
作者: marion    时间: 2007-06-15 13:53
我不太明白你是怎么获得(( 1&&2 ))的返回值的。

但在bash中,是把所有的非0当作“真”,0为“假”的。
作者: newsecond    时间: 2007-06-15 14:01
谢谢 marion
((1&&2))它的退出状态码为0.......................

我把退出状态代码跟....它的值混淆了..
真心谢谢 marion不耐其烦的帮助我.




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2