[shell基础]——数组

时间:2023-03-08 21:14:43

数组赋值

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