linux – 使用quote作为键的Bash hashmap

前端之家收集整理的这篇文章主要介绍了linux – 使用quote作为键的Bash hashmap前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
Bash中,我想取消设置hashmap的条目.但我失败了.代码如下:
declare -A arr
arr["a'b"]=3
echo ${!arr[@]} ## output: a'b
key="a'b"
unset arr[$key] ## error: -bash: unset: `arr[a'b]': not a valid identifier

我怎样才能取消此条目?

解决方法

只需使用单引号:
$declare -A arr=(["a'b"]=3 [foo]=bar)
$declare -p arr
declare -A arr='(["a'\''b"]="3" [foo]="bar" )'
$key="a'b"
$unset 'arr[$key]'
$declare -p arr
declare -A arr='([foo]="bar" )'

完成!

猜你在找的Linux相关文章