awk配列のすべての内容を見る方法は?

awk配列のすべての内容を見る方法は?

私の理解によると、awk配列はPython辞書に似ています。

だから私はそれを探索するために次のコードを書いています。

awk '{my_dict[$1] = $2} END { print my_dict}' zen

わかりました:awk: can't read value of my_dict; it's an array name.

最初の列は数字ではないので、配列の内容全体を読み取ったり繰り返すにはどうすればよいですか?

ベストアンサー1

配列のキーを繰り返してその値を抽出できます。

awk '{my_dict[$1] = $2} END { for (key in my_dict) { print my_dict[key] } }' zen

Python辞書に似た出力を取得するには、キーを印刷することもできます。

awk '{my_dict[$1] = $2} END { for (key in my_dict) { print key ": " my_dict[key] } }' zen

これはキータイプに関係なく機能します。

おすすめ記事