shell--数组

数组:相同元素按一定顺序组成的集合

1.初始化数组

array=(1 2 3)

2.添加元素

array[0]=111

[root@localhost shell_scripts]# echo ${array[*]}
111 2 xi

3.命令的输出做数组

[root@localhost shell_scripts]# a=($(ls))
[root@localhost shell_scripts]#
[root@localhost shell_scripts]# echo ${a[*]}
! create_user.sh eth.sh find_process.sh nc_source_check.sh sethost_user_passwd.sh sysinit_1.sh sysinit.sh test.sh user.info

4.获取所有的数组元素 * #都代表所有元素

[root@localhost shell_scripts]# echo ${a[*]}
! create_user.sh eth.sh find_process.sh nc_source_check.sh sethost_user_passwd.sh sysinit_1.sh sysinit.sh test.sh user.info

5.获取某一个元素 数组是从0开始

第一个元素

[root@localhost ~]# array=(a b c)
[root@localhost ~]# echo ${array[*]}
a b c
[root@localhost ~]# echo ${array[0]}
a
6.删除某一个元素

[root@localhost ~]# unset array[0]
[root@localhost ~]# echo ${array[0]}

 删除所有

[root@localhost ~]# unset array[*]
[root@localhost ~]#
[root@localhost ~]# echo ${array[*]}

 7.获取数组长度:

# echo ${#array[*]}

历遍数组的脚本练习

No1

ip=(192.168.1.1 192.168.1.2 192.168.1.3)
for ((i=0;i<${#ip[*]};i++));do
echo ${ip[i]}
done

No2


ip=(192.168.1.1 192.168.1.2 192.168.1.3)
for i in ${ip[*]};do
echo $i

done

原文地址:https://www.cnblogs.com/linux-error/p/11166613.html