|
发表于 2007-8-6 20:42:17
|
显示全部楼层
Post by chenxingchen
不过csh中好像是以1为真的。 呵呵,这和POSIX shell不太一样。
csh的语法类似C语言,所以 if 测试的是后面括号里的表达式的值而不是命令的返回状态,因此如果想把命令执行的返回结果作为表达式的值进行测试,必须把命令放到 {} 内:如果返回零,表达式为真;如果返回非零,表达式为假。
总之,对POSIX shell,看到分支或循环对条件的测试,不要在大脑中混入“返回值”的概念,而只要思考执行的命令是否成功。 |
|