数组定义
方法一:
array_name=(value0 value1 value2 value3)
方法二:
array_name[0]=value0
array_name[1]=value1
array_name[2]=value2
方法三:
array_name=(
value0
value1
value2
value3)
数组的引用
1.${array_name[n]}
获取数组第n+1个元素
2.${array_name[@]}
获取数组所有的元素
3.${array_name[*]}
获取数组所有的元素
4.${#array_name[n]}
获取数组第n+1个元素的长度
5.${#array_name[@]}
获取数组元素个数
6.unset array[n]
删除第n+1个元素
7.unset array
删除数组
数组的替换
方法一:不改变原数组{arrary[@]/old/new}
[root@jiangpeisi shell]# echo ${array1[@]/php/lua}
lua c++ python java
[root@jiangpeisi shell]# array3=${array1[@]/php/lua}
[root@jiangpeisi shell]# echo ${array3[@]}
lua c++ python java
方法二:改变原数组array=([1]=new1 [2]=new2 [3]=new3)
[root@jiangpeisi shell]# array1=([1]=lua [2]=php)
[root@jiangpeisi shell]# echo ${array1[@]}
lua php
数组遍历
方法一:通过元素遍历
array1=(php c++ python java)
for var in ${array1[@]};
do
echo $var
done
[root@jiangpeisi shell]# sh array.sh
php
c++
python
java
方法二:通过下标遍历
array1=(php c++ python java)
for i in "${!array1[@]}";
do
printf "${array1[$i]}\n"
done
[root@jiangpeisi shell]# sh array.sh
php
c++
python
java
方法三:使用while循环遍历数组
array1=(php c++ python java)
i=0
while [ $i -lt ${#array1[@]} ]
do
echo ${array1[$i]}
let i++
done
[root@jiangpeisi shell]# sh array.sh
php
c++
python
Java