私はこの配列を持っています:
declare -A astr
ここに要素を追加します。
astr[elemA]=123
astr[elemB]=199
ただし、後でインデックスID(elemAとelemB)が何であるかを知り、それらを一覧表示する必要があります。
echo "${astr[@]}" #this only get me the values...
答え1
次のように、連想配列の「キー」リストを取得できます。
$ echo "${!astr[@]}"
elemB elemA
次のように「キー」を繰り返すことができます。
for i in "${!astr[@]}"
do
echo "key : $i"
echo "value: ${astr[$i]}"
done
はい
$ for i in "${!astr[@]}"; do echo "key : $i"; echo "value: ${astr[$i]}"; done
key : elemB
value: 199
key : elemA
value: 123