0

我正在尝试调试其他人的脚本:

代码行是:

y=$((${oldvalue[$x]}-${newvalue[$x]}))

只要两边都是正数,y 就可以计算得很好。但是,我有一个生产情况,它们都是负面的,我得到的错误是:

DEBUG Old value = -4144290000
DEBUG New value = -4009685000
script.sh: line 123: -4144290000--4009685000: assignment requires lvalue

即使是最简单的计算,我也不会使用ksh自己,但我处于生产支持的位置并且必须处理一大堆泥巴,我至少会使用 Perl/Python。谁能说出为什么会发生这个问题以及如何解决它?

谢谢

4

1 回答 1

2

它需要在减号的两侧留出空间

y=$((${oldvalue[$x]} - ${newvalue[$x]})) 
于 2012-12-27T19:07:26.510 回答