1

重複の可能性:
連想配列を引数としてBashの関数に渡す方法は?

ハッシュ配列を宣言します。

declare -A some_array

そして、私は自分の関数を宣言します:

some_function() {
  ..
}

配列にアクセスするために、配列を引数として関数に送信するにはどうすればよいですか?

グローバル変数として使用できることはわかっていますが、いくつかの関数で使用したいハッシュ配列がたくさんある場合、それは解決策ではありません。

それを行う方法がない場合、他のハッシュ配列値にどのように割り当てることができますか?

4

1 に答える 1

1

グローバル変数としてアクセスします (関数内で名前で参照するだけです)。Bash には配列の受け渡しはありません。これを行うための厄介なテクニックがありますが、混乱を避けることをお勧めします。

その他のオプションには、配列、ハッシュ、またはそれらの参照の受け渡しをサポートする Python や Perl などの言語でスクリプト全体を記述することが含まれます。

Bash 4.3 以降では名前参照を使用できますが、注意事項があります。

于 2012-06-07T22:42:17.990 に答える