Bash 脚本高级特性与操作技巧
1. 数组操作
1.1 查找数组使用的下标
Bash 允许数组在分配下标时存在“间隙”,因此有时需要确定数组中实际存在哪些元素。可以使用以下参数扩展形式来实现:
- ${!array[*]}
- ${!array[@]}
其中, array 是数组变量的名称。与其他使用 * 和 @ 的扩展一样,用引号括起来的 @ 形式最有用,因为它会扩展为单独的单词。示例如下:
[me@linuxbox ~]$ foo=([2]=a [4]=b [6]=c)
[me@linuxbox ~]$ for i in "${foo[@]}"; do echo $i; done
a
b
c
[me@linuxbox ~]$ for i in "${!foo[@]}"; do echo $i; done
2
4
6
1.2 向数组末尾添加元素
如果需要向数组末尾追加值,仅知道数组中的元素数量并无帮助,因为 * 和 @ 表示法返回的值并不能告诉我们正在使用的最大数组索引。不过,Bash 提供了一个解决方案:使用 += 赋值运算符,可以自动将值追加到数组末尾。示例如下:
[m
超级会员免费看
订阅专栏 解锁全文
90

被折叠的 条评论
为什么被折叠?



