Linux数组与关联数组

Posted 奔跑的金鱼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux数组与关联数组相关的知识,希望对你有一定的参考价值。

数组

数组的定义:

variable=(arg1 arg2 arg3 …)

中间用空格分开,数组的下标从0开始

1.获取下标为n的元素

variable[n]

不存在数组溢出的情况,如果下标n>=数组长度,那么为空,不会报错。

[[email protected] test]# var=(1 2 3)
[[email protected] test]# echo ${var[0]}
1

 

2.获取数组长度

${#var[@]}或者${#var[*]}

[[email protected] test]# echo ${#var[@]}
3
[[email protected] test]# echo ${#var[*]}
3

 

3.循环遍历数组

语法:

for i in ${var[@]};do

#do something…

done

也可以将上述@换成*

 

关联数组

在关联数组中,我们可以用任意的文本作为数组索引

[[email protected] test]# declare -A Arr
[[email protected] test]# Arr=([pos1]=zhangsan [pos2]=Lisi
[[email protected] test]# echo ${Arr[pos1]}
zhangsan

也可以使用独立的索引对数组赋值

[[email protected] test]# Arr[pos3]=Wangwu

 

列出数组所以的索引值(关联数组与普通数组都通用)

[[email protected] test]# echo ${!Arr[@]}
pos2 pos3 pos1
[[email protected] test]# echo ${!Arr[*]}
pos2 pos3 pos1


以上是关于Linux数组与关联数组的主要内容,如果未能解决你的问题,请参考以下文章

打开高效文本编辑之门_Linux awk之关联数组

关联数组与 SplObjectStorage

嵌入式Linux C语言——指针与数组

VSCode自定义代码片段—— 数组的响应式方法

VSCode自定义代码片段10—— 数组的响应式方法

(linux shell)第一章--小试牛刀(下)