如何使用差异和焊接工具找到两个目录之间的区别

在本文中,我们将展示如何使用diff命令行工具找到两个目录之间的区别,并在Linux中使用gui visual diff / merge工具。

在之前的文章中,我们回顾了9种最佳的文件比较和差异(Diff)工具 ,在本文中,我们将介绍如何在Linux中找到两个目录之间的区别。

通常,为了比较Linux中的两个文件 ,我们使用diff - 一个简单的原始Unix命令行工具,显示两个计算机文件之间的区别; 将文件逐行比较,易于使用,大多数(如果不是全部)Linux发行版都预先安装。

问题是我们如何获得Linux中两个目录的区别? 在这里,我们想知道两个目录中的哪些文件/子目录是常见的,那些存在于一个目录而不是另一个目录中。

运行diff的常规语法如下:

$ diff [OPTION]… FILES
$ diff options dir1 dir2 

默认情况下,其输出按文件/子目录名称按字母顺序排列,如下面的屏幕截图所示。 在这个命令中, -q开关告诉diff只有当文件不同时才报告。

$ diff -q directory-1/ directory-2/
两个目录之间的区别

两个目录之间的区别

再次,diff不会进入子目录,但是我们也可以使用-r开关来读取子目录。

$ diff -qr directory-1/ directory-2/ 

使用Meld Visual Diff和合并工具

有一个很酷的图形选项,称为meld (GNOME桌面的视觉差异和合并工具),适合那些喜欢使用鼠标的人,可以按如下方式进行安装。

$ sudo apt install meld  [Debian/Ubuntu systems]
$ sudo yum install meld  [RHEL/CentOS systems]
$ sudo dnf install meld  [Fedora 22+]

安装完成后,在Ubuntu DashLinux Mint菜单中 ,在Fedora或CentOS桌面的活动概览中搜索“ meld ”,并启动它。

您将看到下面的Meld界面,您可以在其中选择文件或目录比较以及版本控制视图。 点击目录比较并移动到下一个界面。

焊接比较工具

焊接比较工具

选择您要比较的目录,请注意,您可以通过选中“ 3路比较 ”选项来添加第三个目录。

选择比较目录

选择比较目录

选择目录后,点击“ 比较 ”。

列出目录之间的区别

列出目录之间的区别

在本文中,我们介绍了如何在Linux中找到两个目录之间的区别。 如果您知道任何其他命令行或gui方式不要忘记通过下面的评论部分分享您的想法到这篇文章。