比较文件内容

比较两个两百万数据的文件,一开始使用diff ,受行号限制,

正确用法:
Comm命令
  如果想对两个有序的文件进行比较,可以使用comm命令。
  语法:comm [- 123 ] file1 file2
  说明:该命令是对两个已经排好序的文件进行比较。其中file1和file2是已排序的文件。comm读取这两个文件,然后生成三列输出:仅在file1中出现的行;仅在file2中出现的行;在两个文件中都存在的行。如果文件名用“- ”,则表示从标准输入读取。
  选项1、2或3抑制相应的列显示。例如comm - 12就只显示在两个文件中都存在的行;comm - 23只显示在第一个文件中出现而未在第二个文件中出现的行;comm - 123则什么也不显示。

示例:比较 qusmartid.csv 和 shanyin_smartid.csv

先排序

upsmart@upsmart-12:~/F1130004$ sort qusmartid.csv > b.csv
upsmart@upsmart-12:~/F1130004$ sort shanyin_smartid.csv > c.csv

比较

c.csv中有,b.csv中没有的内容

upsmart@upsmart-12:~/F1130004$ comm -23 c.csv b.csv 
0ceb45be-a283-46da-a055-02ae99d2b3af
a39e607e-0294-423b-896c-eff952937acf
c743c9c9-953b-467f-9bcb-9ada6e4feece

b.csv中有,c.csv中没有的内容

upsmart@upsmart-12:~/F1130004$ comm -23 b.csv c.csv 
121b0ca7-70c4-41a7-b29e-a2e9ea85c742
64ef72d4-1c9b-4d4b-86d4-4776c6f63df4
79fa3759-5eb8-49ba-bc80-ef6e2c8f0704
c20a2a83-453b-4fd3-9132-34edabf18e9d
c5d52e0a-c11e-4744-b595-957d448cb9f5
d106be49-e429-44dc-b3ed-34d2461cbf58
d1d9ac0e-2e20-4f9a-ac5e-60795726995e

其他:
comm -1 不显示只出现在第一个文件的行。
comm -2 不显示只出现在第二个文件的行。
comm -3 不显示同时出现在两个文件的行。
comm file1 file2 显示三列,第一列代表只出现在file1的行,第二列代表只出现在file2的行,第三列代表俩个文件同时出现的行
comm -12 显示两个文件同时出现的行 也就是交集
comm -13 显示只出现在第二个文件的行
comm -23 显示只出现在第一个文件的行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值