启动脚本的摘录如下所示:
ENABLED = 1
testing“$ ENABLED”!=“0”|| 退出0
问题是,无论Enabled设置为0还是1,脚本总是在该行退出。 我查了一下“man test”,就我所知,testing总是评估expression式,然后用返回码退出(!!)? 它是否正确。 那么这个脚本在这一行里总是会退出,不pipe这个variables的值是什么? (所以它的越野车)。
谢谢!! 延
#!/bin/bash ENABLED=1 test "$ENABLED" != "0" || exit 0 echo "wasn't zero"
当我运行这个,我得到
[madhatter@risby tmp]$ ./foo wasn't zero
所以,在我看来,也是
那个testing语句基本上说“如果$ ENABLED被设置为0以外的东西,退出代码为0(这通常意味着在这个美妙的Linux / Unix世界中是OK的”)。
这是否澄清你呢? 没有看到完整的启动脚本,很难再告诉你:-)