数组
- 普通数组
- 定义:
- array_name=(元素1 元素2 元素3 …) 元素之间用空格隔开。这样做索引是默认了的(0,1,2,3…),也可以指定索引,如:array_name=(元素1 元素2 元素3 [20]=元素4)
- 也可一个一个定义:array_name[0]=ss,array_name[1]=s,…
- 访问数组元素:${array_name[索引]},不加索引,访问的是第一个元素,C语言似乎也是这么回事。
- array_name=(命令/变量),可以将命令的结果或变量作为数组元素
- 关联数组(类似pthon中的字典)
- 定义:
- 首先需要声明,declare -A array_name。-a是声明普通数组。
- 然后创建数组:array_name=( [ 索引1 ]=元素1, [ 索引2 ]=元素2, [ 索引3 ]=元素4,…)
- 也可通过array_name[索引4]=元素4或array_name+=([s索引4]=元素4)来添加数组内容
- 访问:${rray_name[索引]}
- 高级用法
方法 | 作用 |
${array_name[@]} | 访问数组中所有元素,等价于${array_name[*]} |
${#array_name[@]} | 统计数组元素个数 |
${!array_name[@]} | 返回所有元素的索引 |
${array_name;开始的索引:截取的个数} |
元素的截取(普通数组可用) |
遍历数组就用${!array_name[@]}得到索引进行遍历,再取得值。