2つのファイルを1つにマージ

2つのファイルを1つにマージ

ABC.txtとDEF.txtという2つのファイルがあると仮定すると、データは次のようになります。

ABC.txt:

abc 14
dka 1
def 51

DEF.txt:

def 12
ckd 41

両方のファイルで列1と2をgrepし、3番目のファイルに書き込んで、3番目のファイルに列1を重複させずに両方のファイルが含まれるようにしたいと思います。 2 つのファイルと存在しない値に対して、3 番目の値が配置されます。ファイルはゼロとして配置されます。どうすればいいですか?

私の予想される出力は次のとおりです(出力:

       ABC     DEF
abc    14      0
ckd    0       41
def    51      12
dka    1       0

ベストアンサー1

$ join -j 1 -a 1 -a 2 -o 0,1.2,2.2 -e 0 <(sort ABC.txt) <(sort DEF.txt)
abc 14 0
ckd 0 41
def 51 12
dka 1 0

タイトルと列の間隔は練習問題として残されます。

おすすめ記事