shell只支持一维数组
【语法格式】arr_name=(value1 value2 ··· valuen)
- 数组下标从0开始;
- 数组内的元素类型可以不同;
- 初始化时不需要定义数组大小。
- 数组的下标可以不连续
操作目的 | 语法格式 | 备注 |
---|---|---|
修改元素 | arr_name[index]=new_value | |
增加元素 | arr_name[${#arr_name[*]}]=add_value | 这要求数组的下标连续 |
删除元素 | unset arr_name[index] | |
空数组 | arr_name=() |
操作目的 | 语法格式 | 备注 |
---|---|---|
读取数组部分元 | ${arr_name[index]} | |
读取数组所有元素 | ${arr_name[*]} ${arr_name[@]} | *按空格读取; @按元素读取 |
数组的截取 | ${arr_name[@]:a:n} | 从下标a开始(包含a),长度为n的数组 |
获取数组长度 | ${#arr_name[*]} ${#arr_name[@]} |