他の列に一致する列をファイルに追加するには?

他の列に一致する列をファイルに追加するには?

2番目の列の数に基づいて、ファイル1の最初の列をファイル2とどのように一致させることができますか?

文書ファイル1

k002  25
k004  54
k003  23

文書ファイル2

25 h
23 j
54 hg

希望の出力

k002 25 h
k003 23 j
k004 54 hg

どうすればいいのかわからず、似たような質問も見つかりませんでした。

awk 'matching {print ... $1, $2}' file1 file2 > file_des

ベストアンサー1

次のことができます。

awk 'NR == FNR { x[$2]=$1; next} { print x[$1], $0 }' file1 file2

どこ:

  • FNR:現在の入力ファイルの入力レコード番号です。
  • NR :これまでに見た入力レコードの総数。

これにより、内容全体がfile1メモリに読み込まれます。

おすすめ記事