数组
基本数组
1、什么是数组
#具备某种相同属性的数据的集合。
(
1,A
2,B
3,C,sex,addr,tel
)
2、为什么要用数组
1、方便查找
2、方便有序的存放
3、普通数组的定义
在linux中,数组分为:普通数组(列表)和关联数组(字典)
普通数组的下标必须是整数
关联数组的下标可以是字符
数组的下标是从0开始的
[root@localhost ~]# declare -a :查看普通数组
1、直接定义
[root@localhost ~]# array=(chenyang 18 male)
2、指定下标的方式定义
[root@localhost ~]# array1=([1]=17 [0]=xiaoxiannv [2]=womale)
3、依次赋值
[root@localhost ~]# array2=()
[root@localhost ~]# array2[0]=tiecui
[root@localhost ~]# array2[1]=19
[root@localhost ~]# array2[2]=male
4、使用命令
[root@localhost ~]# array3=(`ls /root`)
4、访问数组
1. 访问数组中的第一个元素
echo ${my_arr[0]}
2. 访问数组中的最后一个元素
echo ${my_arr[2]}
or
echo ${my_arr[-1]}
3. 访问数组中所有元素
echo ${my_arr[*]}
4. 统计数组元素的个数
echo ${#my_arr[*]}
5. 统计数组某一元素的长度
echo ${#my_arr[0]}
6. 获取数组元素的索引
echo ${!my_arr[*]}
7. 切片
从数组下标1开始
echo ${my_arr[@]:1}
从数组下标1开始,访问两个元素
echo ${my_arr[@]:1:2}
5、添加数组元素
[root@localhost ~]# array3[1]=fdgsfbdsgbkdf
注:添加元素,如果添加的下标不存在即为添加数据,如果下标已经存在则为修改数据。
6、删除数组元素
知识储备:
unset [变量名] : 删除变量
1、删除特定某一个数据
[root@localhost ~]# unset array3[3]
[root@localhost ~]# echo ${array3[3]}
2、删除所有的数据
[root@localhost ~]# unset array3
关联数组
除了 可以用字符串作为下标,基本与普通数组一样。
[root@localhost ~]# declare -A array3=()
浙公网安备 33010602011771号