超级简单bash如果(变量>整数)处理(变量作为命令

时间:2016-09-13 21:15:38

标签: bash

我觉得这应该很简单,但我无法超越这一步。

$num = 5
if [$num > 2]; then echo greater; fi

问题是,我一直得到[5: command not found

为什么不正确评估if [ test ]块?这就像shell忘记了if而刚刚转移到"嘿,[5 > 2看起来不像命令,我无法找到{{1} }" ...但是[5不是命令,它是[5测试块的一部分?

我尝试使用不同的括号并使用if代替-gt。问题是bash实际上并没有进行测试。出于某种原因,它会忽略>

1 个答案:

答案 0 :(得分:0)

刚设法找到答案: if compare strings get a "command not found"-Error

真的很意外,[括号和变量之间需要有空格。

我绝不会猜到。