2008-12-04 27 views
0

我最近在牆上做了一些bash shell編程,其中一個關聯數組可以解決我的問題。我搜索了KornShell(ksh)的功能,並瞭解到它支持關聯數組,因此我安裝了Cygwin的pdksh(Public Domain KornShell)。pdksh(公共域kornShell)是否支持關聯數組?

但是,當試圖以規定的方式創建關聯數組(typeset -A varName)時,我收到以下錯誤,所以我開始懷疑pdksh不支持關聯數組。

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

猜猜我會考慮Perl,但我真的想要一個很好的藉口來學習新的方言/語言。

回答

1

看看ksh93,它支持關聯數組,並且是一個更完整/正確的ksh實現。

參見:kornshell.com

+0

cygwin似乎不可用; pdksh是唯一的類似ksh的外殼。 – Alastair 2008-12-04 21:51:39

0

爲什麼不使用bash?它可能沒有顯式的關聯數組,但你可以使用fake them

或者,zsh有excellent associative array support

+0

bash version 4 [has associative arrays](http://www.gnu.org/software/bash/manual/bashref.html#Arrays)。 – 2011-07-11 14:24:45

1

pdksh程序不具有關聯數組任何支持;這是它的繼任者mksh的一個計劃和確定的特徵(只要我開始真正實施它,那就是...抱歉,因爲這樣慢)。