awkを使用して2つの異なるファイルから2つの列を結合したいと考えています。awkで異なるファイルの2つの列を結合する
A B C D E F
FIL2:これらのファイルは、(A、B、C、0、1、2、などが列です)
file1のように見える
0 1 2 3 4 5
そして、私のことができるようにしたいです私のouputを上の任意の列を選択し、フォームの何か:
すなわち、私は出力になりたい:
A C E 4 5
私は次のawkコード(と非常に似たもの)で百万の答えを見てきました。しかし、それらのどれも私が解決したい正確な問題に対処していない:
awk 'FNR==NR{a[FNR]=$2;next};{$NF=a[FNR]};1' file2 file1
awk '
NR==FNR {A[$1,$3,$6] = $0; next}
($1 SUBSEP $2 SUBSEP $3) in A {print A[$1,$2,$3], $4}
' A.txt B.txt
をしかし、それらのどれも私がやりたいように見えるんし、私は彼らを理解することはできませんよ。
したがって、awkを使用して希望の出力を得るにはどうすればよいですか? (と、私は実際に学びたいの説明を、提供してください)
注: 私はAWKを学び、理解しようとしている、言ったように私は
paste <(awk '{print $1}' file1) <(awk '{print $2}' file2)
のようなものを使用してこれを行うことができます知っています。真の多次元配列とARGINDのためのGNUのawkで
2つのファイルから何を取得したいのですか....希望する出力plsを追加できますか? – Kent
ありがとうございます。申し訳ありませんが非常に明確でない場合。私は質問を編集しました(ACE 4 5のA、B、C ... 0、1、2 ...の列が表示されます) – Scarlehoff
ジョインでは、列を横に並べて貼り付けることを意味しますindex?参加するには、一致するキー値が必要です。これはサンプル入力ファイルにはありません。 – karakfa