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 に答える