Maybe I lack the proper zen, but I haven't found this to be true at all.
Here's a good bash FAQ. It contains questions like "how do I use associative arrays", with answers like "this is a complex question."
I don't even have to ask in any half-decent scripting language.
I reccommend ksh over bash. That's all I use these days. It was sh done right, although it does have a bit of history to it for compatibility.
To use associative arrays in ksh:
typeset -A table
column="name"
table[$column]="value"
echo ${table[$column]}
ksh is much more decent than bash, although I reccommend using in an emacs M-x shell buffer for better command line editing.Edit: forgot to dereference column when setting value in table.
For reference, to use associative arrays in Bash:
declare -A table
column="name"
table[$column]="value"
Included in recent versions of bash :)I say typeset, you say declare, let's call the whole thing off! :)
It's incredibly powerful for interactive use and data manipulation combined with the standard Unix tools and sometimes pulling out perl or python is more work than just banging out a pipeline on the command line.
Quoting does take some time, but just remember that when in double to quote your variable expansions with double quotes. There's more too it, but that's a good rule to start with.