当前位置: 首页 > 科技观察

如何在Linux上使用Meld比较文件夹

时间:2023-03-14 14:50:50 科技观察

我们从新手的角度学习了Meld(包括Meld的安装),也提到了Meld中级用户常用的一些技巧。如果你还记得,在入门教程中,我们说过Meld可以比较文件和文件夹。我们已经讨论了如何比较文件,今天,我们就来看看Meld是如何比较文件夹的。需要注意的是,本教程中的所有命令和示例均在Ubuntu14.04上使用Meld版本3.14.2进行了测试。CompareFolderswithMeld打开Meld工具并选择CompareFoldersDirectory比较选项来比较两个文件夹。使用Meld比较目录选择要比较的文件夹:选择目录并点击比较按钮,你会看到Meld像图片一样在两列中比较目录,就像文件比较一样。直观地比较目录列将在树中显示这些文件夹。您可以在上图中看到-差异,无论是新文件还是修改后的文件-都以不同的颜色突出显示。根据Meld的官方文档,您在窗口中看到的每个不同的文件或文件夹都会突出显示。这样就很容易看出这个文件/文件夹和另一栏对应的文件/文件夹的区别。下表是Meld网站上列出的比较文件夹时突出显示的不同字体大小/颜色/背景等。状态行为含义相同的普通字体正在比较的文件夹中的所有文件/文件夹都相同。过滤后相同斜体文件夹中的文件不同,但是使用文本过滤器,文件是相同的。修改后的蓝色粗体这些文件在比较的文件夹中是不同的。NewGreenBold该文件/文件夹存在于该目录中,但不存在于其他目录中。缺少灰色文本,删除线此目录中不存在文件/文件夹,但存在于其他目录中。Errorsredboldwithyellowbackground比较文件时发生错误,最常见的错误原因是文件权限(例如,Meld无法打开文件)和文件名编码不正确。Meld默认会列出比较文件夹的所有内容,即使它们没有什么不同。当然,您也可以通过单击工具栏中的Same按钮来设置Meld不显示这些相同的文件/文件夹-单击此按钮使其不可用。samebuttonMeldcomparebuttons下面是单击Same按钮使其不可用的屏幕截图:没有相同文件的目录比较这样您将看到仅显示两个文件夹(新的和修改的)中不同的文件。同样,如果您单击新建按钮使其不可用,那么Meld将只列出修改过的文件。因此,这些按钮允许您自定义比较文件夹时显示的内容。您可以使用工具窗口显示区域的上下箭头来切换是显示新建文件还是修改文件。要打开两个文件进行逐列比较,请双击文件,或单击箭头旁边的比较按钮。meldcomparearrowkeys提示1:如果仔细观察,您会在Meld窗口的左右两侧看到小条。这些条的目的是提供“简单的颜色编码比较结果”。对于每个不同的文件/文件夹,栏上都有一个小的彩色块。您可以单击每个这样的图块以跳转到其相应的文件/文件夹。提示2:您始终可以逐列比较文件,然后按照自己的方式合并不同的文件,如果您想合并所有不同的文件/文件夹(即您希望特定文件/文件夹与另一个文件/文件夹完全相同),那么您可以使用左侧的复制左和复制右按钮:合并复制右部分例如,您可以在左列中选择一个文件或文件夹,然后单击右侧的复制右按钮,这样右边的相应条目是完全一样的。现在在窗口的下拉菜单中找到Filters按钮,就在Same、New和Modified按钮的下方。在这里你可以选择或取消选择文件类型,并告诉Meld在比较文件夹时是否显示该类型的文件/文件夹。官方文档解释说,菜单中的这个条目意味着“执行文件夹比较时不会查看这种类型的文件名”。此列表中的条目包括备份文件、操作系统元数据、版本控制文件、二进制文件和多媒体文件。前面提到的Meld过滤器条目也可以通过以下方式找到:浏览->文件过滤器。您可以通过“编辑”->“首选项”->“文件过滤”向该条目添加新元素(并删除现有元素)。Meld首选项要创建新的过滤条件,您需要使用一组shell符号,下表列出了Meld支持的shell符号:通配符匹配*任何字符(例如,零个或多个字符)?[abc]中列出的任何字符[!abc]中未列出的任何字符{cat,dog}“cat”或“dog”最重要的一点是Meld的文件名默认情况下区分大小写。也就是说,Meld将readme和ReadMe视为与README不同的文件。幸运的是,您可以在Meld中关闭区分大小写。只需打开浏览菜单并选择忽略文件名大小写选项。Meld忽略文件名大小写结论您是否认为使用Meld比较文件夹很容易——事实上,我认为这很容易。仅创建文件过滤器会花费一些时间,但这并不意味着您不必学习创建过滤器。显然,这取决于您的需求。另外,您甚至可以使用Meld比较三个文件夹。当你想比较三个文件夹时,你可以点击三向比较复选框。今天不介绍如何比较三个文件夹,但肯定会在后续的教程中出现。