向函数传数组参数

向函数传数组参数:输出全部值

#!/bin/bash
test1 () {
     
  echo "函数接收到的列表为:$@"
  newarr=($(echo $@))
  echo ${newarr[*]}
}

arr=(3 2 1 4 5)
echo "原始的数组的值为:${arr[*]}"
a=${arr[*]}
test1 $a
[root@localhost ~]# . hanshuchuanshuzu1.sh 
原始的数组的值为:3 2 1 4 5
函数接收到的列表为:3 2 1 4 5
3 2 1 4 5

向函数传数组参数:输出第一个值

#!/bin/bash
test1 () {
     
  echo "函数接收到的列表为:$@"
  newarr=$1
  echo "新数组的值为:${newarr[*]}"
}

arr=(3 2 1 4 5)
echo "原始的数组的值为:${arr[*]}"
a=${arr[*]}
test1 $a
[root@localhost ~]# . hanshuchuanshuzu.sh 
原始的数组的值为:3 2 1 4 5
函数接收到的列表为:3 2 1 4 5
新数组的值为:3

你可能感兴趣的:(函数及函数调用,shell)