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

 

posted @ 2018-07-13 18:25  pei-金秋十月  阅读(3193)  评论(0编辑  收藏  举报