Linux火眼金睛:查找两个目录之间的差异

系统 Linux
在本文中,我们将描述如何在Linux中找到两个目录之间的差异。

在本文中,我们将描述如何在Linux中找到两个目录之间的差异。

通常,为了比较Linux中的两个文件,我们使用diff,一个简单而原始的Unix命令行工具,它向您显示两个计算机文件之间的差异。逐行比较文件,并且易于使用,并且在大多数Linux发行版中都预装了该工具。

问题是如何在Linux中获得两个目录之间的区别?在这里,我们想知道两个目录中共有哪些文件/子目录,它们存在于一个目录中却不在另一个目录中。

运行diff的常规语法如下: 

  1. $ diff [OPTION]… FILES  
  2. $ diff options dir1 dir2  

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

  1. linuxmi@linuxmi:~/www.linuxmi.com$ diff -q www.linuxmi.com/ linuxmi.com/ 

只在 www.linuxmi.com/ 存在:Blender 2.blend

只在 www.linuxmi.com/ 存在:Windows 10 vs Debian vs Arch Linux (EndeavourOS) - Speed Test!-cQWwb8VRrhU.mkv

两个目录之间的差异

同样,diff不会进入子目录,但是我们可以使用-r开关读取子目录,就像这样。 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ diff -qr www.linuxmi.com/ linuxmi.com/ 

使用Meld可视化差异和合并工具

有一个很酷的图形化选项叫做meld(用于GNOME桌面的可视化差异和合并工具),对于那些喜欢使用鼠标的人,您可以按如下方式安装它。 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt install meld [Debian/Ubuntu 系统] 

 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo yum install meld [RHEL/CentOS 系统]  
  2. linuxmi@linuxmi:~/www.linuxmi.com$ sudo dnf install meld [Fedora 22+]  

安装后,在Fedora或CentOS桌面上的“活动概述”中的Ubuntu Dash或Linux Mint菜单中搜索“ meld”,然后启动它。

您将在下面看到Meld界面,您可以在其中选择文件或目录比较以及版本控制视图。单击目录比较,然后转到下一个界面。

选择您想要比较的目录,注意您可以通过勾选“3路比较”选项来添加第三个目录(如下图)。

一旦你选择了目录,点击“比较”。

在本文中,我们描述了如何找到Linux中两个目录之间的区别。如果你知道任何其他命令行或GU方法,不要忘记通过下面的评论部分分享你对本文的想法。 

 

责任编辑:庞桂玉 来源: Linux公社
相关推荐

2013-01-23 09:12:13

云存储服务云存储提供商选择云存储

2011-03-08 09:27:33

2020-08-14 08:13:49

列表差异编程

2017-06-23 17:18:56

互联网

2020-05-26 12:52:06

Windows 10网络故障

2018-11-28 14:59:56

云计算

2017-10-17 09:49:06

2010-11-17 13:35:50

BUG

2024-03-11 12:21:07

模型数据

2020-07-08 13:26:47

Python

2023-09-06 07:11:41

大模型人工智能

2011-12-20 09:23:09

2024-08-06 12:00:00

监督学习视觉

2018-11-09 13:36:10

企业上云华为云

2010-11-17 15:43:55

软件测试Bug

2020-10-27 19:30:37

人工智能AI火星新陨石

2022-02-24 11:00:12

安全美国中国

2021-12-16 16:20:57

GoWebSocketLinux

2011-11-26 12:09:23

激光打印机推荐

2013-04-25 10:22:48

点赞
收藏

51CTO技术栈公众号