IE-LAB:如何在Linux上识别相同内容的文件

本文介绍了在Linux系统中使用六个实用命令来识别和处理重复文件的方法,包括diff、校验和、find、fslint、rdfind和fdupes命令。这些工具能够帮助用户高效地比较文件内容、查找重复文件并进行管理。

文件副本有时会占用大量磁盘空间,如果要进行更新,可能会造成混淆。这里有六个命令可以帮助您识别这些文件
一、使用diff命令比较文件
比较两个文件最简单的方法可能就是使用diff命令。输出将显示两个文件之间的差异。<和>符号表示额外的行是否在作为参数提供的第一个(<)或第二个(>)文件中。在此示例中,额外的行位于backup.html中。
在这里插入图片描述
如果diff显示没有输出,则表示两个文件相同。
在这里插入图片描述
diff的唯一缺点是它一次只能比较两个文件,你必须识别要比较的文件。我们将在本文中看到的一些命令可以为您找到重复的文件。
二、使用校验和
该校验和(校验)命令计算校验和文件。校验和是将内容数学减少到一个很长的数字(如2819078353 228029)。虽然不是绝对唯一,但是内容不相同的文件导致相同校验和的可能性非常小。
在这里插入图片描述
三、使用find命令
虽然find命令没有查找重复文件的选项,但它可用于按名称或类型搜索文件并运行cksum命令。例如:
在这里插入图片描述
四、使用fslint命令
该fslint命令可以用来专门查找重复文件。请注意,我们给它一个起始位置。如果需要运行大量文件,该命令可能需要相当长的时间才能完成。这是非常适度搜索的输出。请注意它如何列出重复文件以及查找其他问题,例如空目录和错误ID
在这里插入图片描述
您可能必须在系统上安装fslint。您可能还需要将其添加到搜索路径中:
在这里插入图片描述
五、使用rdfind命令
该rdfind命令还将寻找重复的(相同内容的)文件。该名称代表“冗余数据查找”,该命令可以根据文件日期确定哪些文件是原始文件 - 如果您选择删除重复项,这将有帮助,因为它将删除较新的文件。
在这里插入图片描述
您也可以在“dryrun”中运行此命令(即,仅报告可能以其他方式进行的更改)。
在这里插入图片描述
rdfind命令还提供诸如忽略空文件(-ignoreempty)和跟随符号链接(-followsymlinks)之类的选项。查看手册页以获取解释。
在这里插入图片描述
请注意,rdfind命令提供了使用-deleteduplicates true设置删除重复文件的选项。
在这里插入图片描述
您可能必须在系统上安装rdfind命令。尝试使用它来熟悉它的工作方式可能是一个好主意。
六、使用fdupes命令
该fdupes命令也可以很容易地识别重复文件,并提供了大量有用的选项-像-r递归。在最简单的形式中,它将重复文件组合在一起,如下所示:
在这里插入图片描述
这是一个使用递归的例子。请注意,许多重复文件很重要(用户的.bashrc和.profile文件),显然不应删除。
在这里插入图片描述

fdupe命令的许多选项如下所示。使用fdupes -h命令,或阅读手册页以获取更多详细信息。
在这里插入图片描述
fdupes命令是另一个您希望安装和使用一段时间以熟悉其许多选项的命令。Linux系统提供了很多用于定位和删除重复文件的工具,以及您希望运行搜索的选项以及在找到重复文件时要对其执行的操作。

文章节选自NETWORKWORLD:
https://www.networkworld.com/article/3390204/how-to-identify-same-content-files-on-linux.html
Ielab老师:赵韶磊

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值