0
当直接在函数中定义一个数组时,下面的工作如预期的那样;bash/shell传递数组然后循环?
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
感谢您的任何帮助,谢谢。
感谢COSTI,将关闭这是欺骗,虽然 – 2013-02-24 14:39:16
我投的实现有已澄清这是一个完整的讨论后,关闭它自己。 :) – 2013-02-24 15:22:59