当直接在函数中定义一个数组时,下面的工作按预期工作;
function each {
local array=(1 2 3)
len=${#array[*]}
for (( i=0; i<len; i++ )); do
echo ${array[$i]}
done
}
each
# outputs;
1
2
3
但我不知道如何将数组作为参数传入并获得相同的输出;
function each {
local array=$1
len=${#array[*]}
for (( i=0; i<len; i++ )); do
echo ${array[$i]}
done
}
array=(1 2 3)
each array
# outputs;
array
感谢您的帮助,谢谢。