Pergunta

Recentemente, correu-se contra uma parede fazendo alguma programação shell bash, onde uma matriz associativa teria resolvido meus problemas. Eu pesquisei sobre os recursos do KornShell (ksh) e descobriu que ele suporta arrays associativos, então eu instalei pdksh do Cygwin (Public Domain KornShell).

No entanto, ao tentar criar uma matriz associativa na forma prescrita (typeset -A varName), recebi os seguintes erros, por isso estou começando a pdksh suspeito não suporta arrays associativos.

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

Acho que vai considerar Perl vez, mas eu realmente queria uma boa desculpa para aprender um dialeto / idioma novo para mim.

Foi útil?

Solução

Dê uma olhada ksh93, ele suporta arrays associativos e é uma implementação muito mais completo / correto de ksh.

Veja: kornshell.com

Outras dicas

pdksh não tem qualquer suporte para arrays associativos; é um recurso planejado e definido de seu sucessor, mksh (assim que eu chegar em torno de realmente implementá-lo, isto é ... desculpe por ser lento com isso).

Por que não usar bash? Ele pode não ter arrays associativos explícitas, mas você pode falso-los .

Alternativamente, zsh tem apoio matriz associativa excelente .

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top