我正在尝试使用以下代码将数组中的值增加1,但是我遇到了一些问题。请问有人可以帮助我吗?
myArray[$position]=((${myArray[$position]}++))
试试这个
myArr[3]=7
(( myArr[3]++ ))
echo ${myArr[3]}
# output
8
(( .... ))
可以执行bash/ksh的数学运算,而且内部引用的变量不需要像你的示例一样传递出去,可能你在想一个类似的结构var=$((... MathStuff ...)) OR var=$( ... stringStuff ... )
(注意在括号前面有'$'符号)。
同时请注意,在(( ... ))
内部,您无需为任何数学变量(如$pct或$counter)使用前导"$"符号。如果您正在使用脚本或函数的参数,例如$1、$2、... $N,则需要使用"$",以便使用$1的值,而不是仅仅的“1”。感谢@ChrisDown提醒!
希望这可以帮到您。
$
,有时你需要使用 $
来强制上下文(例如 $1
、$2
... $N
)。 - Chris Downlet myArr[3]++
。 - l0b0自增并更新:
array[1]=$((array[1]++))