我正在尝试使用 Debian Gnu-Linux 12.4、22.12.3 和 Bash 5.2.15 构建一个关联数组,其中数组中的键值对引用同一数组中的其他键值对。
例子,
declare -A test=(
[0]=0
[1]=1
[2]=2
[3]=$((test[1]+test[2]))
[4]="${test[1]} ${test[2]}"
)
当我在 Konsole 中执行以下 echo 语句时,
echo "${test[1]}"
echo "${test[2]}"
echo "${test[3]}"
echo "${test[4]}"
我有时会得到这样的结果,
1
2
0
有时我得到了我想要的
1
2
3
1 2
由于这种不一致(这可能完全是我的行为造成的),我有几个问题。
- 这可以做到吗?
- 如果是,有正确的方法吗?
另外,我找不到一致的方法来复制这两个不同的结果,无论发生什么或如何发生。