Shell 数组
数组中可以存放多个值。Bash Shell 只支持一维数组(不支持多维数组),初始化时不需要定义数组大小(与 PHP 类似)。与大部分编程语言类似,数组元素的下标由0开始。
Shell 数组用括号来表示,元素用"空格"符号分割开,语法格式如下:
array_name=(a1 a2 ... an)
使用规则
1、Bash仅仅支持一维数组,并且没有限定数组的大小。
2、数组元素的下标从0开始。
3、获取数组中的元素要利用下标,
4、下标使用不当,会报错。
一、定义数组
语法1: arrayName=(值1 值2 … 值n)
语法2: arrayName=( 值1 值2 .. 值n )
注意:元素间使用空格分隔开或者换行符
语法3: 或者直接定义数组的各个元素
name[0]=值1 name[1]=值2 … name[n]=值n
二、读取数组
格式: ${name[index]}
三、获取数组所有元素
格式: ${name[*]} 或${name[@]}
四、获取数组长度
格式: ${#name[*]}或${#name[@]}
变量名称 意义
$* 获取所有参数,合并一个字符串
$# 参数个数
$$ 当前进程的ID
$! 后台运行的最后一个进程的ID
$? 显示最后一个命令的退出状态。0表示没有错误
实例:
运行结果如上:执行./test.sh之前,必须修改权限:chmod +x ./test.sh