更改函数内变量的值

时间:2013-04-10 19:36:10

标签: arrays bash function variables

我想知道如何从bash中的函数返回一个数组

array[0]=0
array[1]=0
array[2]=0

function change {

     array[0]=1
     array[1]=2
     array[2]=3

}

但是这不起作用(数组的所有元素仍为0) 谢谢你的帮助

2 个答案:

答案 0 :(得分:3)

不要忘记调用该功能。

#!/bin/bash

array[0]=0
array[1]=0
array[2]=0

function change {
     array[0]=1
     array[1]=2
     array[2]=3
}

change    # <--------------

echo "${array[@]}"

结果:

$ ./test
1 2 3

答案 1 :(得分:1)

是的,他们仍然是0.因为你根本没有打电话给你的功能。

试试这个:

array[0]=0
array[1]=0
array[2]=0

function change {

     array[0]=1
     array[1]=2
     array[2]=3

}

change
echo ${array[@]}