ファイル1、ファイル2、ファイル3に存在するレコードを探す

ファイル1、ファイル2、ファイル3に存在するレコードを探す

3つのファイルがあり、file1.txtファイル形式は同じです。file2.txtfile3.txt

私はそれぞれ列2と列3に基づいてfile1.txt出力ファイル内のレコードを選択したいと思います。file2.txtfile3.txtout.txt

out2.txtさらに、追加の列(4番目の列file2.txt、5番目の列)を含む別のファイルを作成する必要がありますfile3.txt

入力例:

file1.txt

1. abc 1 a f11 f13 f14 
2. abd 2 b f12 f14 f13  
3. abe 4 d f13 f16 f12 
4. acf 6 s f14 f15 f19

file2.txt

 1. abc 1 a f21 f23 f24 
 2. abd 1 b f21 f24 f23  
 3. abe 4 d f24 f26 f22 
 4. acf 6 s f23 f25 f29

file3.txt

 1. abc 1 a f31 f33 f34 
 2. abd 2 b f31 f34 f33  
 3. acf 5 s f33 f35 f39 
 4. abe 4 d f34 f36 f32

希望の出力

out.txt

 1. abc 1 a f11 f13 f14 
 2. abe 4 d f13 f16 f12 

out2.txt

 1. abc 1 a f11 f13 f14 f21 f31
 2. abe 4 d f13 f16 f12 f24 f34

ベストアンサー1

確認したいかもしれません場所diff3に関して、このプログラムを使用して3つのファイルをサンプル出力として比較できます。

$ diff3 parent.txt your.txt mine.txt

 ==== 

1:1,2c Hello, 

This is parent file.

2:1,2c Hello, 

This is your file. 

3:1,2c Hello, 

This is my file.

あなたはそれを使用することができます

diff3 file1.txt file2.txt file3.txt > output.txt

おすすめ記事