代码改变世界

Shell中map的使用

  方斌  阅读(1598)  评论(0编辑  收藏  举报

Shell中的map与array有很多的相似之处,array操作:https://www.cnblogs.com/qq931399960/p/10786111.html

一、在使用map时,需要先声明,否则结果可能与预期不同,array可以不声明

declare -A map

二、初始化map

与array类似,可以使用括号直接初始化,也可以通过添加的方式来初始化数据,与array不同的是,括号直接初始化时使用的为一个键值对,添加元素时,下标可以不是整数

map=(["aa"]="11" ["bb"]="22")
map["name"]="val"
map["apple"]="pen"

三、输出所有的key

若未使用declare声明map,则此处将输出0,与预期输出不符,此处输出语句格式比arry多了一个!

echo ${!map[@]}

四、输出所有value

与array输出格式相同

echo ${map[@]}

五、输出map长度

与array输出格式相同

echo ${#map[@]}

六、遍历,根据key找到对应的value

for key in ${!map[*]};do
echo ${map[$key]}
done

七、遍历所有的key

for key in ${!map[@]};do
echo $key
done

八、遍历所有的value

for val in ${map[@]};do
echo $val
done

如上,可以发现,map与arry有很多的相似之处,在存储上两者最大的区别可能是array的key只能为整数,而map的key则可以为任何值

from https://www.cnblogs.com/qq931399960/p/10786362.html

编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示