Bash命令 —— diff

diff 比较无序文本文件

使用:

1. diff old new  默认格式输出,输出信息为如何将第一个文件进行改变后变为与第二个文件相同

字符: c, a, d 分别代表 change, append, delete

字符: < 代表第一个文件的行, > 代表第二个文件的行

情况一:改变文件内容

3c3    将第一个文件的第3行改变为第二个文件的第3行

< Paig Turner

---

> Paige Turner

情况二: 追加文件内容

1a2    在第一个文件的第一行之后追加第二个文件的第二行

> Will Power

情况三: 删除文件内容

4d3  删除第一个文件的第4行,发现差异是在第二个文件的第三行

< Mark Mywords

选项:

-i 忽略大小写

-w 忽略空白符

-b 忽略空白符但排除一个文件无空白符的情况

-B 忽略空白行

-q 只表示文件有无差异,不显示细节

设置输出格式:

diff -c old new  以易于阅读但较长的格式输出,默认上下文显示2行

diff -u old new  以易于阅读但较短的格式输出,默认上下文显示2行

diff -y old new  以并排的格式输出

diff -C5 old new 以易于阅读较长格式并设置显示上下文为5行

diff -U5 old new 以易于阅读但较短的格式并设置上下文为5行

sdiff 并排输出:

sdiff old new  并排格式输出

sdiff -l old new 当拥有共同行时只显示左边的列

sdiff -s old new 不显示在两个文件中相同的任何行

sdiff -w 30 old new 重新设置两列的宽度

原文地址:https://www.cnblogs.com/xiaodi-js/p/12615079.html