Ist pdksh (public domain Kornshell) Unterstützung assoziative Arrays?
Frage
Ich lief vor kurzem gegen eine Wand einig Bash-Shell-Programmierung zu tun, wo ein assoziatives Array meine Probleme gelöst haben würde. Ich googeln über Merkmale des Kornshell (KSH) und erfuhr, dass es assoziative Arrays unterstützt, so dass ich installierte Cygwin pdksh (Public Domain Kornshell).
Wenn jedoch ein assoziatives Array in der vorgeschriebenen Weise zu schaffen versuchen (typeset -A varName), habe ich die folgenden Fehler erhalten, so dass ich fange an pdksh zu vermuten, dass nicht unterstützt assoziative Arrays.
./find_actions.ksh: line 2: typeset: -A: invalid option
typeset: usage: typeset [-afFirtx] [-p] name[=value] ...
Ratet mal werde ich stattdessen unter Berücksichtigung Perl, aber ich wollte wirklich eine gute Ausrede, um einen Dialekt / Sprache neu für mich lernen.
Lösung
Werfen Sie einen Blick auf ksh93 unterstützt es assoziative Arrays und ist ein viel umfassenderes / korrekte Umsetzung von KSH.
Siehe auch: kornshell.com
Andere Tipps
pdksh hat keine Unterstützung für assoziative Arrays; es ist eine geplante und bestimmte Merkmal seines Nachfolgers, mksh (sobald ich um tatsächlich bekommen umzusetzen, das ist ... sorry für mit, dass langsam sein).
Warum nicht einfach bash benutzen? Es ist vielleicht nicht explizit assoziative Arrays haben, aber Sie können fälschen sie .
Alternativ zsh hat ausgezeichnete assoziative Array Unterstützung .