shell使用数组
目录
定义数组
使用括号定义数组,定义的时候可以用元素进行初始化,也可以直接定义:
array1=()
array2=(item1 item2 item3)
访问数组:
一般格式是:
${arrayName[index]}
例如:
echo ${array2[1]}
数组的下标跟C语言一样是从0开始的,所以上面输出的是item2
也可以访问全部元素,下面两种方法是等价的:
echo ${array2[*]}
echo ${array2[@]}
追加元素
array2[50]="abc"
array2[30]="def"
然后让我们看一下现在的数组是怎么样子的:
#!/bin/bash
array1=()
array2=(item1 item2 item3)
array2[50]="abc"
array2[30]="def"
echo ${array2[*]}
------------------------------
yalexin@yalexin-PC:/usr/study$ ./array.sh
item1 item2 item3 def abc
可以发现,追加元素时候下标不需要是连续的,当我们输出全部元素的时候,元素是空值的会自动省略。
获取长度:
len=${#array2[*]}
或者
len=${#array2[@]}
也可以获取数组元素的长度:
indexLen=${#array2[50]}
这里的indexLen
指的是元素的字符个数。
本文由「黄阿信」创作,创作不易,请多支持。
如果您觉得本文写得不错,那就点一下「赞赏」请我喝杯咖啡~
商业转载请联系作者获得授权,非商业转载请附上原文出处及本链接。
关注公众号,获取最新动态!
历史评论
开始评论