我知道它(!间接变量引用${!parameter}
)在一般变量中可以工作,但我需要在字典中使用它,但它不起作用。有人知道原因以及如何实现它吗?
我只知道字典名和键名,如何获取字典中的值?
#!/bin/bash
declare -A a_dict
a_dict=(
['aa']='valueA'
['ab']='valueB'
)
declare -A b_dict
b_dict=(
['ba']='valueA'
['bb']='valueB'
)
indirect_var(){
name=$1
key=$2
echo ${!name[$key]}
}
indirect_var a_dict aa
在评论中,pmf 已经提供了使用间接引用的工作功能。
如果运行
bash 4.3+
另一个选项nameref
,例如:进行试驾: