Hi-*_*gel 37 unix linux bash shell conditional-statements
这似乎是一个简单的问题,我想知道为什么谷歌搜索没有提供任何帮助 - 也不是在StackOverflow,也不是在教程中.我只需要使用bash检查条件是否为假.
我发现我试过的
if ! [ 0==2 ]; then echo Hello; fi
Run Code Online (Sandbox Code Playgroud)
和
if [ ! 0==2 ]; then echo Hello; fi
Run Code Online (Sandbox Code Playgroud)
他们都没有打印Hello.
我发现只有两个类似的问题,但两种情况下的最终答案都是重组代码,不使用"错误"条件.
woj*_*iii 63
你的意思是:
if ! [ 0 == 2 ]; then
echo Hello;
fi
Run Code Online (Sandbox Code Playgroud)
你在相等运算符周围缺乏空间.
这可能是阅读http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html的时候 - 尤其是关于if then else和运算符的部分.我在编写脚本时通常会打开它.
Red*_*edX 10
对于数学评估,请使用(( ))bash.用于文字使用[[ ]].
if (( $i == 0 )); then
echo "i is 0"
else
echo "i is unequal 0"
Run Code Online (Sandbox Code Playgroud)