Linux Shell Map的用法详解
linux  /  管理员 发布于 7年前   1039
Map定义:
在使用map时,需要先声明,否则结果可能与预期不同,array可以不声明
方式1:
declare -A myMapmyMap["my03"]="03"
方式2:
declare -A myMap=(["my01"]="01" ["my02"]="02")myMap["my03"]="03"myMap["my04"]="04"
Map初始化:
与array类似,可以使用括号直接初始化,也可以通过添加的方式来初始化数据,与array不同的是,括号直接初始化时使用的为一个键值对,添加元素时,下标可以不是整数
myMap["my03"]="03"myMap["my04"]="04"
输出Map所有的key、value、长度:
# 1)输出所有的key#若未使用declare声明map,则此处将输出0,与预期输出不符,此处输出语句格式比arry多了一个!echo ${!myMap[@]}#2)输出所有value#与array输出格式相同echo ${myMap[@]}#3)输出map长度#与array输出格式相同echo ${#myMap[@]}
Map遍历:
#1)遍历,根据key找到对应的valuefor key in ${!myMap[*]};do echo $key echo ${myMap[$key]}done#2)遍历所有的keyfor key in ${!myMap[@]};do echo $key echo ${myMap[$key]}done#3)遍历所有的valuefor val in ${myMap[@]};do echo $valdone
Map测试:
[root@cdh-143 shell-test]# more map-test.sh#!/bin/shecho "一、定义Map:declare -A myMap=([\"myMap00\"]=\"00\" [\"myMap01\"]=\"01\")"declare -A myMap=(["my00"]="00" ["my01"]="01")myMap["my02"]="02"myMap["my03"]="03"echo "二、输出所有的key:"echo ${!myMap[@]}echo "三、输出所有value:"echo ${myMap[@]}echo "四、输出map的长度:"echo ${#myMap[@]}echo "五、遍历,根据key找到对应的value:"for key in ${!myMap[*]};do echo "key:"$key echo "value:"${myMap[$key]}doneecho "六、遍历所有的key:"for key in ${!myMap[@]};do echo "key:"$key echo "value:"${myMap[$key]}doneecho "七、遍历所有value:"for val in ${myMap[@]};do echo "value:"$valdone
输出:
[root@cdh-143 shell-test]# ./map-test.sh
一、定义Map:declare -A myMap=(["myMap00"]="00" ["myMap01"]="01")
二、输出所有的key:
my02 my03 my00 my01
三、输出所有value:
02 03 00 01
四、输出map的长度:
4
五、遍历,根据key找到对应的value:
key:my02
value:02
key:my03
value:03
key:my00
value:00
key:my01
value:01
六、遍历所有的key:
key:my02
value:02
key:my03
value:03
key:my00
value:00
key:my01
value:01
七、遍历所有value:
value:02
value:03
value:00
value:01
[root@cdh-143 shell-test]#
到此这篇关于Linux Shell Map的用法详解的文章就介绍到这了,更多相关Linux Shell Map内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号