shell map数据结构的实现


前言
    Bash默认不支持二维数组,如果我们想实现map 数据结构,可以安装如下的方式来进行构造
 
预备知识
    eval:  它是shell内建命令,用于字符串的解析。它会首先扫描命令行然后进所有的置换,最终再执行该命令。
 
 
案例
 
 
解析:
#第一步,声明arr 是一个数组,它里面的值由两个表达式组成
arr=(
    "stu1=(Bob boy 23)"
    "stu2=(Smith girl 18)"
    )
 
#第二步,遍历arr中所有变量的值【也就是获取所有的表达式】,然后用eval 进行解析
for a in "${arr[@]}”    
do
    eval ${a}
done
 
#第三步,使用解析后的数据
echo ${stu1[0]}
 
#说明:
#${arr[@]} :表示获取数组的所有值
#${#arr[@]} :表示获取数组的长度

  

posted @ 2019-07-16 11:06  大步向前blue  阅读(2955)  评论(0编辑  收藏  举报