Linux中如何比较两个文件的差异?

描述

Linux 中如何比较两个文件的差异? 答案是使用 diff 命令。

那么,如何比较两个文件夹呢? 仍然使用 diff 命令。

另外,使用 GUI 工具也可以更容易的以可视化界面来查看两个目录之间的差异。

今天我们分享一下如何使用 diff 命令来比较目录。

使用 tree 命令可查看我们今天的例子中使用的两个目录的结构:

命令

使用 diff 命令比较目录

使用 diff 命令,可参照如下语法结构:

diff -qr Directory-1 Directory-2

-q 选项,用于查找差异。 当两个目录中发现差异的时候,会有输出报告:

diff -q LHB-1 LHB-2

命令

但是,大家仔细看输出结果,diff 命令只查看第一层目录结构。 默认情况下,它不会查找子目录中的文件。

要执行递归查找,需要使用 -r 选项:

diff -qr LHB-1 LHB-2

命令

但是,另外的情况,如果想要查找类似的文件呢?

查找类似的文件可以使用 -s 选项。 如果同时使用 -q 和 -s,将会同时显示相同和不同的目录文件:

diff -qrs LHB-1 LHB-2

命令

diff 命令显示目录中不同的文件。 要查看差异,可以再次对文件运行 diff 命令,以查看其内容的差异。

使用 GUI 工具来比较目录

如果不想使用命令行工具,只想以最简单的方式比较两个目录,可以使用 Meld。

Meld 是一个可以检查和合并差异的 GUI 工具。 当然,使用前需要安装。 如果使用的是 Ubuntu/Debian 系统,使用如下命令:

sudo apt install meld

安装完成后,使用 Meld,可执行以下三个简单的步骤:

1)选择目录比较(directory comparison);

2)选择需要比较的目录;

3)点击比较(compare)按钮。

命令

点击比较按钮后,它将显示所选目录中的匹配文件和不同文件:

命令

标注星号的是完全匹配的文件,而用绿色突出显示的文件名仅可用于相应的目录。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分