5.2 数组
数组是相同类型的元素按一定顺序排列的集合。格式:
array=(元素 1 元素 2 元素 3 ...)
用小括号初始化数组,元素之间用空格分隔。定义方法 1:初始化数组
array=(a b c)
定义方法 2:新建数组并添加元素array[下标]=元素
定义方法 3:将命令输出作为数组元素array=($(command))
获取所有元素:
# echo ${array[*]} # *和@ 都是代表所有元素a b c
获取元素下标: # echo ${!a[@]} 0 1 2
获取数组长度:
# echo ${#array[*]} 3
获取第一个元素: # echo ${array[0]} a
获取第二个元素: # echo ${array[1]} b
获取第三个元素: # echo ${array[2]} c
添加元素:
# array[3]=d
# echo ${array[*]} a b c d
添加多个元素:
# array+=(e f g) # echo ${array[*]} a b c d e f g
删除第一个元素:
# unset array[0] # 删除会保留元素下标# echo ${array[*]}
b c d e f g 删除数组:
# unset array
数组下标从 0 开始。
#!/bin/bash
for i in $(seq 1 10); do
array[a]=$i
let a++
done
echo ${array[*]}
# bash test.sh
1 2 3 4 5 6 7 8 9 10
方 法 1:
#!/bin/bash
IP=(192.168.1.1 192.168.1.2 192.168.1.3)
for ((i=0;i<${#IP[*]};i++)); do
echo ${IP[$i]}
done
# bash test.sh
192.168.1.1
192.168.1.2
192.168.1.3
方 法 2:
#!/bin/bash
IP=(192.168.1.1 192.168.1.2 192.168.1.3)
for IP in ${IP[*]}; do
echo $IP
done
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 Eternal Night
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果