[Shell] bash: hash を定義して key, value で取り出す

memo.

bash 4.x から hash が使えるようになったそう。

要素が多い場合は、下記のように1行ずつ書いた方が分かりやすいような気がします。

declare -A animals
animals["moo"]="cow"
animals["woof"]="dog"

key, value を取り出すのはこんな形です。

for key in "${!animals[@]}"
do
  echo "key - $key, value - ${animals[$key]}"
done