乘法前的Bash加法(使用括号表示的优先级)

时间:2014-03-03 14:47:13

标签: bash expression parentheses operator-precedence

我试图在将结果乘以之前将1加到变量上 在Java中它就像

int upperBound = (curBatch + 1) * elePerBatch;

我尝试了以下

upperBound=$(($curBatch + 1 * $elePerBatch))
upperBound=$((($curBatch + 1) * $elePerBatch))
upperBound=$(((($curBatch + 1)) * $elePerBatch))
upperBound=$(($(($curBatch + 1)) * $elePerBatch))

没有任何作用,我得到了这种错误

  

0 + 1 *:语法错误:预期的操作数(错误标记为“*”)

我在其他问题中看到过这个错误,但我找不到解决问题的方法。

1 个答案:

答案 0 :(得分:1)

结果elePerBatch未初始化。

我无法弄清楚错误的含义,否则我会注意到它。

这有效

upperBound=$(($(($curBatch + 1)) * $elePerBatch))