linux-tutorial/codes/shell/基本脚本/数组使用示例.sh

56 lines
1.1 KiB
Bash
Raw Normal View History

2019-08-08 14:05:30 +08:00
#!/usr/bin/env bash
2019-10-15 14:17:17 +08:00
################### 创建数组 ###################
2019-10-10 08:56:31 +08:00
nums=( [ 2 ] = 2 [ 0 ] = 0 [ 1 ] = 1 )
colors=( red yellow "dark blue" )
2019-08-08 14:05:30 +08:00
2019-10-15 14:17:17 +08:00
################### 访问数组的单个元素 ###################
2019-08-08 14:05:30 +08:00
echo ${nums[1]}
# Output: 1
2019-10-15 14:17:17 +08:00
################### 访问数组的所有元素 ###################
2019-08-08 14:05:30 +08:00
echo ${colors[*]}
# Output: red yellow dark blue
echo ${colors[@]}
# Output: red yellow dark blue
printf "+ %s\n" ${colors[*]}
# Output:
# + red
# + yellow
# + dark
# + blue
printf "+ %s\n" "${colors[*]}"
# Output:
# + red yellow dark blue
printf "+ %s\n" "${colors[@]}"
# Output:
# + red
# + yellow
# + dark blue
2019-10-15 14:17:17 +08:00
################### 访问数组的部分元素 ###################
2019-08-08 14:05:30 +08:00
echo ${nums[@]:0:2}
# Output:
# 0 1
2019-10-15 14:17:17 +08:00
################### 获取数组长度 ###################
2019-08-08 14:05:30 +08:00
echo ${#nums[*]}
# Output:
# 3
2019-10-15 14:17:17 +08:00
################### 向数组中添加元素 ###################
2019-10-10 08:56:31 +08:00
colors=( white "${colors[@]}" green black )
2019-08-08 14:05:30 +08:00
echo ${colors[@]}
# Output:
# white red yellow dark blue green black
2019-10-15 14:17:17 +08:00
################### 从数组中删除元素 ###################
2019-10-10 08:56:31 +08:00
unset nums[ 0 ]
2019-08-08 14:05:30 +08:00
echo ${nums[@]}
# Output:
# 1 2