数组
数组(Array)是有序的元素序列。若将有限个类型相同的变量的集合命名,那么这个名称为数组名。 组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。 用于区分数组的各个元素的数字编号称为下标。元素的下标从0开始。 数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按有序的形式组织起来的一种形式。 这些有序排列的同类数据元素的集合称为数组。
定义数组
Shell中,数组用括号来表示,元素用"空格"符号分隔开。
数组包括的数据类型:
- 数值型
- 字符型 (如果元素值为字符类型,需要加单引号或双引号,防止单个元素中有空格被当成2个元素)
- 混合型数值加字符
格式如下
- 数组名=(value0 value1 value2 ..........valuen)
- 数组名=( [0]=value1 [1]=value2 [2]=value3.........[N-1]=valueN )
- 列表名="value1 value2 value3...........valueN"
- 数组名[0]=value1
- 数组名[1]=value2
- 数组名[2]=value3
- 数组名[3]=value4
- 数组名[N-1]=valueN
引用数组
获取数组所有元素的值
echo ${array[*]}
查看数组内某一个元素的值
${数组名[n]}
获取数组的长度
echo ${#数组名[*]}
数组截取
${数组名[*]:起始位置:截取长度}
元素替换
数组名=(${数组名[@]/旧字符/新字符})
删除数组
删除某个元素时
unset 数组名[n]
删除整个数组
unset 数组名[*]
增加数组内的元素
数组名[n]=元素值
数组名+=(元素1 元素2 .....)