shell 比较两个文件不同 sort comm

为了比较效果好必须排序去重

 sort -k2n 31have.txt | uniq > res31.txt

 sort -k2n 32have.txt | uniq > res32.txt

然后进行比较

comm -23 res31.txt res32.txt >aa31.txt,取第一个独自出现的,比写程序快多了

具体用法含义

语法:comm [- 123 ] file1 file2
说明:该命令是对两个已经排好序的文件进行比较。其中file1和file2是已排序的文件。comm读取这两个文件,然后生成三列输出:仅在file1中出现的行;仅在file2中出现的行;在两个文件中都存在的行。如果文件名用“- ”,则表示从标准输入读取。
comm -1 不显示只出现在第一个文件的行。
comm -2 不显示只出现在第二个文件的行。
comm -3 不显示同时出现在两个文件的行。
comm file1 file2 显示三列,第一列代表只出现在file1的行,第二列代表只出现在file2的行,第三列代表俩个文件同时出现的行
comm -12 显示两个文件同时出现的行 也就是交集
comm -13 显示只出现在第二个文件的行
comm -23 显示只出现在第一个文件的行




版权声明:本文为lb521200200原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。