Поддерживает ли pdksh (общедоступный домен kornShell) ассоциативные массивы?

StackOverflow https://stackoverflow.com/questions/342147

Вопрос

Недавно я столкнулся со стеной, занимаясь программированием оболочки bash, где ассоциативный массив решил бы мои проблемы. Я гуглил о функциях KornShell (ksh) и узнал, что он поддерживает ассоциативные массивы, поэтому я установил Cygwin's pdksh (Public Domain KornShell).

Однако при попытке создать ассоциативный массив заданным способом (typeset -A varName) я получил следующие ошибки, поэтому я начинаю подозревать, что pdksh не поддерживает ассоциативные массивы.

./find_actions.ksh: line 2: typeset: -A: invalid option
typeset: usage: typeset [-afFirtx] [-p] name[=value] ...

Думаю, я буду рассматривать Perl, но я действительно хотел найти хороший повод для изучения нового для меня диалекта / языка.

Это было полезно?

Решение

Посмотрите на ksh93, он поддерживает ассоциативные массивы и является гораздо более полной / правильной реализацией ksh.

См .: kornshell.com

Другие советы

pdksh не поддерживает ассоциативные массивы; это & # 8217; это запланированная и определенная особенность его преемника, mksh (как только я приступлю к его реализации, то есть & # 8230; извините за медлительность с этим).

Почему бы просто не использовать bash? Возможно, он не имеет явных ассоциативных массивов, но вы можете подделать их .

Кроме того, zsh имеет отличную поддержку ассоциативных массивов .

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top