2在Linux中查找和删除重复文件的有用工具

如果您有从互联网下载各种内容的习惯,组织您的主目录甚至系统可能会特别困难。

通常,您可能会发现已下载相同的mp3,pdf,epub(以及所有其他文件扩展名)并将其复制到不同的目录中。 这可能会导致您的目录被各种无用的重复内容弄得乱七八糟。

在本教程中,您将学习如何使用rdfindfdupes命令行工具在Linux中查找和删除重复文件。

注意事项 - 请务必小心您在系统上删除的内容,因为这可能会导致不必要的数据丢失。 如果您使用的是新工具,请首先在测试目录中尝试删除文件不会出现问题。

Rdfind - 在Linux中查找重复文件

Rdfind来自冗余数据查找。 它是一个免费工具,用于在多个目录中或多个目录中查找重复文件。 它使用校验和并根据文件查找重复项不仅包含名称。

Rdfind使用算法对文件进行分类,并检测哪些副本是原始文件,并将其余部分视为重复文件。 排名规则是:

  • 如果在扫描早于B的输入参数时找到A ,则A的排名更高。
  • 如果在低于B的深度发现A ,则A的排名更高。
  • 如果A早于B发现,则A排名较高。

最后一条规则特别适用于在同一目录中找到两个文件的情况。

要在Linux中安装rdfind ,请根据 Linux发行版使用以下命令。

$ sudo apt-get install rdfind     [On Debian/Ubuntu]
$ sudo yum install epel-release && $ sudo yum install rdfind    [On CentOS/RHEL]
$ sudo dnf install rdfind         [On Fedora 22+]

要在目录上运行rdfind ,只需键入rdfind和目标目录即可。 这是一个例子:

$ rdfind /home/user

在Linux中查找重复文件

正如您所看到的, rdfind会将结果保存在名为results.txt的文件中,该文件位于运行程序的同一目录中。 该文件包含rdfind找到的所有重复文件。 如果需要,您可以查看该文件并手动删除重复的文件。

您可以做的另一件事是使用-dryrun选项,该选项将提供重复列表而不执行任何操作:

$ rdfind -dryrun true /home/user

找到重复项后,您可以选择使用硬链接替换它们。

$ rdfind -makehardlinks true /home/user

如果你想删除重复项,你可以运行。

$ rdfind -deleteduplicates true /home/user

要检查rdfind的其他有用选项,您可以使用rdfind手册。

$ man rdfind 

Fdupes - 在Linux中扫描重复文件

Fdupes是另一个程序,允许您识别系统上的重复文件。 它是免费的开源软件,用C语言编写。它使用以下方法确定重复文件:

  • 比较部分md5sum签名
  • 比较完整的md5sum签名
  • 逐字节比较验证

就像rdfind一样,它有类似的选择:

  • 递归搜索
  • 排除空文件
  • 显示重复文件的大小
  • 立即删除重复项
  • 排除具有不同所有者的文件

Fdupes语法类似于rdfind 只需键入命令,然后键入要扫描的目录。

$ fdupes <dir>

要以递归方式搜索文件,您必须像这样指定-r选项。

$ fdupes -r <dir>

您还可以指定多个目录并指定要递归搜索的目录

$ fdupes <dir1> -r <dir2>

要让fdupes计算重复文件的大小,请使用-S选项。

$ fdupes -S <dir>

要收集有关找到的文件的摘要信息,请使用-m选项。

$ fdupes -m <dir>

在Linux中扫描重复文件

最后,如果要删除所有重复项,请使用-d选项。

$ fdupes -d <dir>

Fdupes会询问要删除哪个找到的文件。 您需要输入文件编号:

删除Linux中的重复文件

绝对不推荐的解决方案是使用-N选项,这将导致仅保留第一个文件。

$ fdupes -dN <dir>

要获取与fdupes一起使用的可用选项列表,请通过运行查看帮助页面。

$ fdupes -help
结论

Rdfindfdupes都是在Linux系统上查找重复文件的非常有用的工具,但在删除这些文件时应该非常小心。

如果您不确定是否需要文件,最好在删除文件之前创建该文件的备份并记住其目录。 如果您有任何问题或意见,请在下面的评论部分提交。

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏