shell编程-数组的使用
前言
在Linux shell编程过程中,数组的应用可以让我们更方便的处理数据。
数组操作
数组是可以一次存放多个值的变量,数组的组织形式如同表格一样。
1、创建一个数组
days=( 1 2 3 4 5 6 7)
days=([1]=Mon [2]=Tue [3]=Wed) #也可以直接指定索引位置的值
2、获取值
echo ${days[1]}
3、遍历数组
days=("0 Sun" "1 Mon" )
for i in ${days[*]} ; do echo $i ; done
结果:
Sun
1
Mon
for i in ${days[@]} ; do echo $i ; done
结果:
Sun
1
Mon
for i in "${days[*]}" ; do echo $i ; done
结果:
0 Sun 1 Mon
for i in "${days[@]}" ; do echo $i ; done
0 Sun
1 Mon
上面四种遍历方式有可能出现不同的结果,如果没有加双引号,是对所有的单词进行拆分成单个词;如果加双引号,*表示当成一个整体进行遍历,一行输出,@表示根据数组里面的引号,拆分成多个词组。
4、数组的长度
echo ${#days[@]}
5、数组元素的长度
echo ${#days[1]} #输出索引为1的元素所包含符号的个数
6、数组下标的使用
for i in "${!days[@]}" ; do echo $i ; done #这里的i表示就是下标,如果没有赋值的索引号是没有值的,不会被打印
7、数组增加元素
days+=("2 Tue")
8、数组删除元素
unset 'days[0]' #删除索引为0的元素
总结
在遍历目录的时候,数组还是比较好用的,而且使用也很简单。