这篇文章主要介绍使用linux的comm命令比较两个已排过序的文件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
专注于为中小企业提供做网站、成都网站设计服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业茌平免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了数千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
comm命令会一列列地比较两个已排序文件的差异,并将其结果显示出来,如果没有指定任何参数,则会把结果分成3行显示:第1行仅是在第1个文件中出现过的列,第2行是仅在第2个文件中出现过的列,第3行则是在第1与第2个文件里都出现过的列。若给予的文件名称为”-“,则comm指令会从标准输入设备读取数据。
语法格式:[参数] [文件1][文件2]
-1 | 不显示只在第1个文件里出现过的列 |
-2 | 不显示只在第2个文件里出现过的列 |
-3 | 不显示只在第1和第2个文件里出现过的列 |
–help | 在线帮助 |
–version | 显示版本信息 |
参考实例
对比文件filename1.txt和filename2.txt:
[root@linuxcool ~]# comm filename1.txt filename2.txt
打印两个文件的交集,需要删除第一列和第二列:
[root@linuxcool ~]# comm filename1.txt filename2.txt -1 -2
打印出两个文件中不相同的行,需要删除第三列:
[root@linuxcool ~]# comm filename1.txt filename2.txt -3 | sed 's/^\t//'
相较于filename2.txt,filename1.txt的差集 :
[root@linuxcool ~]# comm filename1.txt filename2.txt -2 -3
相较于filename1.txt,filename2.txt的差集 :
[root@linuxcool ~]# comm filename2.txt filename1.txt -2 -3
以上是使用linux的comm命令比较两个已排过序的文件的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!