我有一组基于特定结尾模式创建的数组。我想通过逐个迭代向其中添加一些计算值。到目前为止,我尝试过这样做,
#!/bin/bash
patternBA=()
patternCA=()
patternDA=()
types=(BA CA DA)
for iterator in "${types[@]}"
do
#I need to use this individual iterator for
#computational purpose to gain the "anyIntegerValue"
pattern'$iterator'+=(anyIntegerValue)
done
预期数组内容:
patternBA=(anyIntegerValue)
patternCA=(anyIntegerValue)
patternDA=(anyIntegerValue)
答案1
使用关联数组可以更好地实现您想要做的事情:
$ declare -A pattern
$ for((i=0;i<${#types[@]};i++));do pattern[${types[$i]}]=$i; done
$ echo ${pattern["BA"]}
0
$ echo ${pattern["CA"]}
1
$ echo ${pattern["DA"]}
2