
私は RHEL 6 サーバーで連想配列を使用しており、RHEL 5 サーバーでスクリプトをテストしたところ、どうやら -A は RHEL 5 の宣言コマンドではサポートされていないようです。
declare -A var
-bash: declare: -A: invalid option
declare: usage: declare [-afFirtx] [-p] [name[=value] ...
これを回避する方法はありますか? RHEL 6 で使用されているように、declare コマンドのみ、または bash シェルのみを更新する方法はありますか?
bash のバージョンは次のとおりです: rhel5 - bash-3.2-24.el5 rhel6 - bash-4.1.2-9.el6_2.x86_64
答え1
連想配列はbashバージョンで導入されました4。
オプション-あ認識されないということは、rhel 5 ネイティブ bash を使用していることを意味します。
コンパイル/ビルドする必要がありますバッシュ4連想配列を使用するには、ソースから取得する必要があります。