2017-02-15 20 views
-1

私は次の問題を抱えています。私はcol 7を比較したいと思います。一致するものがあれば、両方のファイルの完全な行を別の行にエクスポートします。私は試していますawk:2つのファイルをマッチングさせ、これらのファイルをマージする方法

awk 'NR==FNR{a[$7]=$0;next}!a[$7]' file1 file2 > output 

しかし、私は他のファイルでfile1の一致を取得します。私はマッチがある場合、私はファイル1のcol 10を取得するだけで私は気にしません。なにか提案を?

ありがとうございます!

+2

試した結果と期待される出力の例を投稿できますか? – Inian

答えて

1

両方のファイルに少なくとも7つの列があると仮定すると、両方の値を出力するようにawkに指示するのを忘れてしまいました。現在の解決策は、file2の7番目の値がfile1の値を持つ配列にないので、file2から新しいファイルにそれらの行だけを出力するかどうかをチェックしています。単純にテスト値が配列に入っていて、いくつかの中括弧にプリントを配置します。

awk 'NR==FNR{a[$7]=$0;next}$7 in a{print a[$7],$0}' file1 file2 > output 
+0

はい、ありがとうございます。それは今働く。 –

関連する問題