Estou tentando construir uma matriz associativa onde pares de valores-chave dentro da matriz fazem referência a outros pares de valores-chave na mesma matriz, usando Debian Gnu-Linux 12.4, 22.12.3 e Bash 5.2.15.
Exemplo,
declare -A test=(
[0]=0
[1]=1
[2]=2
[3]=$((test[1]+test[2]))
[4]="${test[1]} ${test[2]}"
)
Quando executo as seguintes instruções echo no Konsole,
echo "${test[1]}"
echo "${test[2]}"
echo "${test[3]}"
echo "${test[4]}"
Às vezes consigo esse resultado,
1
2
0
e às vezes consigo o que pretendia
1
2
3
1 2
Por causa dessa inconsistência (que pode ser exclusivamente minha), tenho algumas perguntas.
- Isso pode ser feito?
- Se sim, existe uma maneira adequada de fazer isso?
Além disso, não consigo encontrar um método consistente para replicar os dois resultados diferentes, pois ambos acontecerão, não importa o que ou como.