2D bash配列が必要な場合はこれをN x M
行うための推奨方法はありますか?array1
各array2
要素を定義するためにケースステートメントを組み合わせる必要があったことが何度もありましたが、arrayN
これは非常に不器用でした。M
大きな配列を定義し、要素間の1-1マッピングを計算することが可能であることを知っていますが、X
正しく実行するには多くの作業が必要なようです。X[something]
[i,j]
これを合理的かつ効率的に実行できる機能セットはありますか?私はこれがBashがFORTRANを模倣するのと少し似ていることを知っています。
ベストアンサー1
いつでも多次元配列を使用する配列に切り替えることができますksh93
(bash
最初はほとんどの項目がその構文を借用します)。
var=(
(a b)
(c d)
)
使用:
$ print -r -- "${var[0][1]}"
b
すべての要素を繰り返します。
for i in "${!var[@]}"; do
for j in "${!var[$i][@]}"; do
print -r "var[$i,$j]=${var[$i][$j]}"
done
done