我在BASH有一个侧面项目很有趣,我有这个代码片段(ARRAY[0]
是8):
while [ $ALIVE == true ]; do
$ARRAY[0] = ${ARRAY[0]} - 1
echo ${ARRAY[0]}
done
但是,它出现了这个错误:
line 16: 8[1]: command not found
我刚刚开始在BASH工作,所以我可能犯了一个明显的错误,但我已经搜索并搜索了这样一个问题的答案,并且没有结果。
答案 0 :(得分:2)
最小的变化就是:
ARRAY[0]=$(( ${ARRAY[0]} - 1 ))
注意:
$
的变量的名称前没有foo=
,而不是$foo=
)=
周围没有空格
$(( ))
是输入数学上下文的语法(并扩展到该操作的结果)。