shell脚本中的比较与除法总是给出错误

oli*_*dev 1 bash shell

我在shell bash脚本中编写了一个非常简单的比较,但我从来没有弄错它:

计数= 0

if [ expr $count / 4 = 0 ];
then
  echo "yes";
else
  echo "no";
fi
Run Code Online (Sandbox Code Playgroud)

总是不给?

gle*_*man 5

如果你想呼叫expr程序,你必须实际呼唤它:

if [ $(expr $count / 4) = 0 ]; then echo "yes"; else echo "no"; fi
Run Code Online (Sandbox Code Playgroud)

但是,bash可以在内部完成:

if (( $count / 4 == 0 )); then echo "yes"; else echo "no"; fi
Run Code Online (Sandbox Code Playgroud)