1

可能重复:
如何将关联数组作为参数传递给 Bash 中的函数?

我声明我的哈希数组:

declare -A some_array

我声明了我的功能:

some_function() {
  ..
}

如何将数组作为参数发送给函数以便访问它?

我知道我可以将它用作全局变量,但是当我有很多想要与某些函数一起使用的哈希数组时,这不是出路。

如果没有办法做到这一点,我该如何分配给另一个哈希数组值?

4

1 回答 1

1

将其作为全局变量访问(只需在函数内按名称引用它)。Bash 中没有传递数组。有一些尴尬的技术试图做到这一点,但我建议避免混乱。

其他选项包括用 Python 或 Perl 等支持传递数组、散列或其引用的语言编写整个脚本。

在 Bash 4.3 或更高版本中,您可以使用名称引用,但有一些注意事项

于 2012-06-07T22:42:17.990 回答