shell数组的一些总结

📅 2026/7/21 15:57:26 👁️ 阅读次数 📝 编程学习
shell数组的一些总结

shell数组的一些总结

数组定义法-1

myarray=(12345)

数组定义法-2

myarray myarray[0]="A"myarray[1]="B"

获取数组的长度

${#myarray[@]}

数组遍历法-1: for循环

注意,
如果数组元素被用作shell函数参数,则元素变量名必须大写,如VAR;
如果仅仅是用作echo,元素变量名可以小写

forVARin${myarray[@]}dosome_func$VARdone

数组遍历法-2: while循环

i=0while[$i-lt${#myarray[@]}]doecho${ myarray[$i]}leti++done

数组遍历法-3: 按数组下标

foriin"${!myarray[@]}"doprintf"%s\t%s\n""$i""${myarray[$i]}"done

向函数传递数组

方法-1: 用全局变量作数组

方法-2: 在调用函数前,将数组转化为字符串; 在函数中,将字符串分割为数组

fun(){local_arr=(`echo$1|cut-d" "--output-delimiter=" "-f1-`)local_size=${#_arr[@]}for((i=0;i<$_size;i++));doelem=${_arr[$i]}echo"$i:$elem"done;}myarray=(AA BB CC)fun"$(echo${myarray[@]})"

(END)