объявить -A на RHEL 5

объявить -A на RHEL 5

Я использую ассоциативный массив на своих серверах RHEL 6 и только что протестировал скрипт на сервере RHEL 5, и, по-видимому, -A не поддерживается для команды declare в RHEL 5:

declare -A var
-bash: declare: -A: invalid option
declare: usage: declare [-afFirtx] [-p] [name[=value] ...

Есть ли способ обойти это? Есть ли способ обновить только команду declare или только оболочку bash до той, которую использует RHEL 6?

Версии bash: rhel5 - bash-3.2-24.el5 rhel6 - bash-4.1.2-9.el6_2.x86_64

решение1

Ассоциативные массивы были введены в версии bash4.

Так как опцияне распознается, это означает, что вы используете rhel 5 native bash.

Вам нужно скомпилировать/собратьБаш 4из источника для использования ассоциативных массивов.

Связанный контент