Bash:仅在第一列相同的情况下,快速找到第二列的两个文件的差异

时间:2018-10-26 12:12:06

标签: bash awk diff

我有两个大约7GB的大文件。仅当两个文件的第一列的编号相同时,我才想找到第二个文件的区别。这两个文件已排序,但可以有不同的行数。

第一个文件如下:(1.txt)

5 5
6 6
7 7 
8 8
9 9

第二个文件如下:(2.txt):

3 3
4 4
5 5
6 6
7 4 
8 4
9 9

输出应如下所示:

7 4
8 4 

现在我有这种单线纸,但是我不确定它是否可以更快地运行:

mawk 'NR==FNR{a[$1]=$2; next} ($1 in a) && a[$1]!=$2' 1.txt 2.txt

1 个答案:

答案 0 :(得分:0)

如果文件按连接键排序,最简单(最快)的将是

current_company