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[*]显示数组