shell 中的 map 使用
- 定义一个空 Map
declare -A map=()
- 定义时初始化 Map
declare -A map=(["k1"]="v1" ["k2"]="v2")
- 输出 size
echo ${#map[@]}
- 输出所有 key
echo ${!map[@]}
- 输出所有 value
echo ${map[@]}
- 添加/修改 value
map["k2"]="newK2"
map["k3"]="k3"
- 遍历 map
for key in ${!map[@]}
do
value=${map[${key}]}
echo "map : ${key} = ${value}"
done
- 删除 key
unset map["k1"]
- map 作为方法参数
function iterMap() {
tmp=$(declare -p "$1")
declare -A _map=${tmp#*=}
for key in ${!_map[@]}
do
value=${map[${key}]}
echo "map : ${key} = ${value}"
done
}
iterMap map
参考
大漠知秋 - Shell 中 Map 使用 : https://pencil.lynchj.com/2019/12/25/shell-中-map-使用/
本文由 ONE 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
如有版权疑问交流,请给我留言:oneisall8955@gmail.com
本文永久链接:https://liuzhicong.cn/index.php/study/shell-map.html
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
如有版权疑问交流,请给我留言:oneisall8955@gmail.com
本文永久链接:https://liuzhicong.cn/index.php/study/shell-map.html