当前位置 : 主页 > 手机开发 > 其它 >

Shell获取数组长度

来源:互联网 收集:自由互联 发布时间:2021-05-13
所谓数组长度,就是数组元素的个数。 利用 @ 或 * ,可以将数组扩展成列表,然后使用 # 来获取数组元素的个数,格式如下: ${#array_name[@]} ${#array_name[*]} 其中 array_name 表示数组名。两种
所谓数组长度,就是数组元素的个数。

利用@*,可以将数组扩展成列表,然后使用#来获取数组元素的个数,格式如下:

${#array_name[@]}
${#array_name[*]}

其中 array_name 表示数组名。两种形式是等价的,选择其一即可。

如果某个元素是字符串,还可以通过指定下标的方式获得该元素的长度,如下所示:

${#arr[2]}

获取 arr 数组的第 2 个元素(假设它是字符串)的长度。

回忆字符串长度的获取

回想一下 Shell 是如何获取字符串长度的呢?其实和获取数组长度如出一辙,它的格式如下:

${#string_name}

string_name 是字符串名。

实例演示

下面我们通过实际代码来演示一下如何获取数组长度。
#!/bin/bash

nums=(29 100 13)
echo ${#nums[*]}

#向数组中添加元素
nums[10]="http://c.biancheng.net/shell/"
echo ${#nums[@]}
echo ${#nums[10]}

#删除数组元素
unset nums[1]
echo ${#nums[*]}
运行结果:
3
4
29
3
网友评论