Text-Processing
如何將兩個文件與特定列中的公共欄位合併
我有兩個文件,當某些特定列相同時,我想以某種方式合併它們,將這些行與除一列之外的所有欄位導出,這是該特定列中兩個文件的減法。
例如,我有如下兩個文件,我想輸出第 1 到第 3 列相同的行,第 4 列等於文件第 4 列(File1 - File2)中兩個值的減法。
文件 1:
10 20 30 50 100 200 300 850 150 250 350 900 .....
文件2:
100 200 300 840 15 25 35 55 150 250 350 880 ....
輸出:
100 200 300 10 150 250 350 20 ....
使用 awk:
$ awk '{k = $1 FS $2 FS $3} NR==FNR {a[k] = $4; next} k in a {print k, a[k]-$4}' File1 File2 100 200 300 10 150 250 350 20