Linux 基础教程 11-基本命令diff和comm
2017-04-16 本文已影响7人
Surpassme
diff命令
diff命令主要用来比较文件的差异。diff会以逐行的方式比较文本文件的差异,如果指定比较的是目录,则diff会比较目录中相同文件名的文件,但不会比较其子目录。
基本语法
diff [参数] 文件1 文件2
主要参数如下所示:
参数 | 功能 |
---|---|
-c | 显示全部内容,并标出不同的地方 |
-b | 忽略行尾的空格,同时字符串中的一个或多个空格都将视为相同 |
-r | 当文件1和文件2为目录时,会比较子目录中的文件 |
-s | 当两个文件相同时,显示文件的相同信息 |
-i | 忽略大小写的差异 |
-y | 以并列的方式显示文件的异同之处 |
-W<宽度> | 在使用参数 -y 时,指定显示的宽度 |
示例
- 1、假设文件first.txt和second.txt的内容分别如下:
first.txt
First:this is first text file!
1:This is a book
2:There are a lot of apples.
3:Really?
4:yeah
5:OK,I know,Thanks
second.txt
Second:this is second text file!
1:This is a book
2:There are a lot of apples.
3:I don't think so
4:yeah
5:OK,I know
-
2、对比结果如下图所示:
11-1 diff示例_c2i.jpg
comm命令
comm命令主要用于比较两个已经排过序的文件。
基本语法
comm [参数] 文件名1 文件名2
主要参数如下所示:
参数 | 功能 |
---|---|
-1 | 不显示在文件1中出现过的行 |
-2 | 不显示在文件2中出现过的行 |
-3 | 不显示同时在文件1和文件2中出现过的行 |
示例
comm在对比文件前一定要先排序,否则会出现报错提示,以上面diff示例的中的first.txt和second.txt为例

本文同步在微信订阅号上发布,如各位小伙伴们喜欢我的文章,也可以关注我的微信订阅号:woaitest,或扫描下面的二维码添加关注:
