linux shell实现从函数返回数组
#!/bin/bash
function arraydb {
//定义局部变量
local orginalarray
local newarray
local element
local i
orginalarray=($(echo''$@''))
newarray=($(echo''$@''))
element=$[ $# - 1 ] //数组个数-1
for((i=0;i<=$element-1;i++)){ //c语言风格的for循环
newarray[$i]=$[ orginal[$i] * 2 ]
}
echo ${newarray[*]}
}
myarray=(1,2,3,4,5,6)
echo ''the orginalarray is:${myarray[*]}''
args=$(echo ${myarray[*]})
result=($(arraydb $args)) //调用函数
echo ''the newarray is:$result[*]'' //注意$result[*]显示数组