1、用法
用法 | 说明 |
1、declare -A map 2、declare -A myMap=(["my01"]="01" ["my02"]="02") 3、declare -A map=() |
1、声明map变量 2、声明map变量的同时可以赋值 3、定义一个空map |
map[$_key]=$_count |
指定key赋值value,其中_key 和 _value 均是 shenll 变量 |
1、echo ${!myMap[@]} 2、echo ${!myMap[*]} |
若未使用declare声明map,则此处将输出0 输出所有的key |
1、echo ${myMap[@]} 2、echo ${myMap[*]} |
输出所有的value |
echo ${#myMap[@]} | 输出map长度 |
unset map[$key] | 从map 中删除指定的key 对应的项 |
echo ${map["hello"]} | 输出指定key的value值 |
2、案例
(1) 遍历,根据key找到对应的value
for key in ${!myMap[*]};do echo $key echo ${myMap[$key]} done
(2) 遍历所有的value
for val in ${myMap[@]};do echo $val done
(3) map 转字符串
function map_to_string() { local -n __map=$1 local result="" local IFS=, # 设置分隔符 for key in "${!__map[@]}"; do result+="${key}=${__map[$key]}"$'\n' # 使用换行符分隔键值对 done echo "$result" }
参考资料:
https://www.cnblogs.com/yy3b2007com/p/11267237.html
https://www.cnblogs.com/yinguohai/p/11193592.html
标签:map,专题,value,echo,key,myMap,数据结构,declare From: https://www.cnblogs.com/sandyflower/p/14030858.html