[shell基础]——数组
数组赋值
1. 逐个数组元素赋值
# array[0]=11 # array[1]=22 # array[2]=33 # echo ${array[@]} 11 22 33 33
2. array( ) 括号中一空格或者换行符作为分隔符分隔每个数组元素
# array=(aa bb cc dd) # echo ${array[@]} aa bb cc dd
3. 输出一条变量结果赋值
# line="aa bb cc dd" # array=(`echo $line`) # echo ${array[0]} aa # echo ${array[@]} aa bb cc dd --->#看出他的应用了吗,在while do done<file.txt中可以用这种方法按行赋值给一个数组
输出数组
1. 输出数组某个元素:${array[下标]}
# echo ${array[1]} bb
2. 输出数组全部元素:${array[@]} 或 ${array[*]}
# echo ${array[@]} aa bb cc dd # echo ${array[*]} aa bb cc dd
3. 统计数组元素个数:${#array[@]}
# echo ${#array[@]} 4
4. 输出数组全部下标:${!array[@]}
echo ${!array[@]} 0 1 2 3
5. 输出从n下标开始到的元素直到最后一个元素:${array[@]:n}
6. 输出从n下标开始的m个元素:${array[@]:n:m}
# echo ${array[@]:2} cc dd # echo ${array[@]:1:3} bb cc dd
7. 用for语句循环输出数组:
for i in "${array[@]}" do echo $i done