Shell 数组
1 基本使用
Shell数组可以包含多个元素。
主要使用步骤:1)数组变量初始化;2)读取元素;3)修改元素。
数组变量初始化
数组=(元素1 元素2 元素3 … 元素n)
各元素前后使用小括号;
各元素之间使用空格。
读取元素
${数组[下标]}
下标的访问格式与其它语言相同,${ }是变量访问形式,相当于两者结合了。
修改元素
数组[下标]=值
示例
arr1=("Linux" "Shell" "HTML" "CSS" "JavaScript")
echo "第1个元素:${arr1[0]}"
arr1[0]="xiaobuteach.com linux"
echo "第1个元素:${arr1[0]}"
2 常用操作
常用操作说明
${arr[index]} 返回下标index对应的元素
${arr[*]}
返回所有元素。echo 所有元素时,会输出各元素字符串,元素之间空隔隔开; for in所有元素时,循环变量表示元素。
${arr[@]} 同上
${#arr[*]} 返回数组元素的个数(数组长度)
${#arr[@]} 同上
${!arr[*]} 返回数组的所有下标
${!arr[@]} 同上
${#arr[index]} 返回下标index对应的元素的字符串的字符个数
示例
arr1=("xiaobuteach.com" "Linux" "Shell" "HTML" "CSS" "JavaScript")
a=${arr1[0]}
echo "第1个元素:${arr1[0]}"
b1=${arr1[*]}
echo "所有元素连接成一个字符串:$b1"
b2=${arr1[@]}
echo "所有元素连接成一个字符串2:$b2"
c1=${#arr1[*]}
echo "元数个数(数组长度):$c1"
c2=${#arr1[@]}
echo "元数个数(数组长度)2:$c2"
d1=${!arr1[*]}
echo "所有元素的下标:$d1"
d2=${!arr1[@]}
echo "所有元素的下标2:$d2"
f=${#arr1[0]}
echo "第1个元素的字符个数:$f"