Linux|如何查找和删除重复文件

引言

整理您的个人文件夹甚至整个操作系统可能会相当棘手,特别是当您习惯于使用下载管理器从网上下载各种资料时。

在很多情况下,您可能会发现自己不小心下载了重复的mp3、pdf和epub文件(以及其他类型的文件),并将它们复制到了多个文件夹中。这种做法可能会使您的文件夹变得杂乱不堪,充斥着许多无用的重复文件。

本文[1]将教您如何在Linux操作系统中利用rdfind、fdupes和rmlint这些命令行工具,以及Dupeguru和FSlint这两款图形界面工具来识别和清除重复的文件。

请注意,删除文件时要格外小心,因为不当的操作可能会导致您失去重要的数据。如果您是第一次使用某个工具,建议您先在一个测试文件夹中进行尝试,以避免误删重要文件。

1. Rdfind

rdfind,即“重复数据查找”,是一个免费的命令行程序,它能够跨目录或在单一目录内搜索重复的文件。该工具会深入地遍历目录,找出内容完全相同的文件,让您可以执行删除或移动这些重复项的操作。

rdfind 采用一种算法来对文件进行排序,并确定哪个副本是原始文件,而将其他的归类为副本。

文件排名的规则包括:

  • 如果在处理输入参数时,A 比 B 更先被找到,那么 A 的优先级更高。
  • 如果 A 比 B 在更深层次的目录中被找到,A 的优先级更高。
  • 如果 A 比 B 更早被找到,A 的优先级更高。
  • 当两个文件位于同一目录时,特别会使用最后一条规则来决定它们的优先级。

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

$ sudo apt install rdfind         [On Debian, Ubuntu and Mint]
$ sudo yum install rdfind         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
$ sudo emerge -a sys-apps/rdfind  [On Gentoo Linux]
$ sudo apk add rdfind             [On Alpine Linux]
$ sudo pacman -S rdfind           [On Arch Linux]
$ sudo zypper install rdfind      [On OpenSUSE]  

要在目录上运行 rdfind,只需键入 rdfind 和目标目录

$ rdfind /home/user
alt

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

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

$ rdfind -dryrun true /home/user

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

$ rdfind -makehardlinks true /home/user

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

$ rdfind -deleteduplicates true /home/user

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

$ man rdfind 

2. Fdupes

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

$ sudo apt install fdupes         [On Debian, Ubuntu and Mint]
$ sudo yum install fdupes         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
$ sudo emerge -a sys-apps/fdupes  [On Gentoo Linux]
$ sudo apk add fdupes             [On Alpine Linux]
$ sudo pacman -S fdupes           [On Arch Linux]
$ sudo zypper install fdupes      [On OpenSUSE]  

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

$ fdupes <dir>

要递归搜索文件,您必须指定 -r 选项,如下所示。

$ fdupes -r <dir>

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

$ fdupes <dir1> -r <dir2>

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

$ fdupes -S <dir>

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

$ fdupes -m <dir>
alt

最后,如果您想删除所有重复项,请使用 -d 选项,如下所示。

$ fdupes -d <dir>

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

alt

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

$ fdupes -dN <dir>

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

$ fdupes -help

3. Rmlint

Rmlint 是一个命令行工具,用于在 Linux 系统中查找和删除重复的和类似 lint 的文件。它有助于识别具有相同内容的文件,以及各种形式的冗余或 lint,例如空文件、损坏的符号链接和孤立文件。

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

$ sudo apt install rmlint         [On Debian, Ubuntu and Mint]
$ sudo yum install rmlint         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
$ sudo emerge -a sys-apps/rmlint  [On Gentoo Linux]
$ sudo apk add rmlint             [On Alpine Linux]
$ sudo pacman -S rmlint           [On Arch Linux]
$ sudo zypper install rmlint      [On OpenSUSE]   
alt

4. dupeGuru

dupeGuru 是一个开源、跨平台的工具,可用于查找 Linux 系统中的重复文件。该工具可以扫描一个或多个文件夹中的文件名或内容。它还允许您找到与您正在搜索的文件相似的文件名。

dupeGuru 有适用于 Windows、Mac 和 Linux 平台的不同版本。其快速模糊匹配算法功能可帮助您在一分钟内找到重复文件。它是可定制的,您可以提取所需的精确重复文件,并从系统中擦除不需要的文件。

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

$ sudo apt install dupeguru         [On Debian, Ubuntu and Mint]
$ sudo yum install dupeguru         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
$ sudo emerge -a sys-apps/dupeguru  [On Gentoo Linux]
$ sudo apk add dupeguru             [On Alpine Linux]
$ sudo pacman -S dupeguru           [On Arch Linux]
$ sudo zypper install dupeguru      [On OpenSUSE]  
alt

5. FSlint

FSlint 是一个免费实用程序,用于查找和清理文件系统上各种形式的 lint。它还报告重复文件、空目录、临时文件、重复/冲突(二进制)名称、错误的符号链接等等。它具有命令行和 GUI 模式。

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

$ sudo apt install fslint         [On Debian, Ubuntu and Mint]
$ sudo yum install fslint         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
$ sudo emerge -a sys-apps/fslint  [On Gentoo Linux]
$ sudo apk add fslint             [On Alpine Linux]
$ sudo pacman -S fslint           [On Arch Linux]
$ sudo zypper install fslint      [On OpenSUSE]  
alt

总结

这些是在 Linux 系统上查找重复文件的非常有用的工具,但删除此类文件时应该非常小心。如果您不确定是否需要某个文件,最好在删除该文件之前创建该文件的备份并记住其目录。

Reference
[1]

Source: https://www.tecmint.com/find-and-delete-duplicate-files-in-linux/

本文由 mdnice 多平台发布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/35829.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

正版软件 | WIFbox:智能化文件管理工具,让效率与隐私并行

在数字化办公日益普及的今天&#xff0c;文件管理成为了提升工作效率的关键。WIFbox 一款智能文件管理工具&#xff0c;利用强大的人工智能技术&#xff0c;帮助您快速对文件进行分类&#xff0c;完成复杂的智能文件分类任务。 智能分类&#xff0c;效率倍增 WIFbox 通过精细化…

2024年Nano编辑器最新使用教程

Nano在大多数Linux发行版中找到&#xff0c;易于使用&#xff0c;其最常用的命令显示在其屏幕底部。 作为编辑配置和其他文件是Linux中的一种普遍的任务&#xff0c;知道如何使用该程序是否可以非常有用。Nano编辑器以及如何使用Nano编辑器在服务器上编辑文件是我们将在本指南中…

linux 下neo4j的安装

一、neo4j简介 Neo4j 是一个高性能的 NoSQL 图形数据库,它将结构化数据存储在网络(从数学角度叫做图)上而不是表中。Neo4j 也可以被看作是一个高性能的图引擎,该引擎具有成熟数据库的所有特性。 neo4j与jdk版本对应 neo4j的版本需要与jdk版本相适配,否则容易出现安装失…

Centos+Jenkins+Maven+Git 将生成的JAR部署到Jenkins服务器上

背景:前一篇写的是Jenkins和项目应用服务器不在同一个服务器上。但是有的公司可能不会给Jenkins单独弄一个服务器。可能就会出现Jenkins就搭建在某一个应用服务器上。这种情况的参考如下的操作。 1、登录 没有安装的参考下面的安装步骤先安装: Jenkins安装手册 输入账号、…

电脑怎么去除视频水印?电脑视频水印怎么去掉?

电脑怎么去除视频水印&#xff1f;有是我们见到喜欢的视频会保存下来&#xff0c;但是有时候保存的视频上面会带有水印&#xff0c;那么视频水印该如何去除呢&#xff1f;今天小编给大家推荐一个好用的视频去水印软件&#xff0c;操作简单&#xff0c;去水印效果好。 使用&…

2024高考录取分数线一览表(含一本线、二本线、专科线)

2024年全国各地的高考录取分数线已经全部公布&#xff0c;查大学网&#xff08;www.chadaxue.com&#xff09;为大家整理全国31个省市高考录取分数线汇总&#xff0c;包括本科批&#xff08;一本分数线线和二本分数线&#xff09;、专科批和特殊类招生控制分数线汇总&#xff0…

【AI落地应用实战】如何让扫描工具更会思考——智能高清滤镜2.0实战测评

一、引言 在这个信息爆炸的数字化时代&#xff0c;扫描工具已经成为我们日常工作和学习中不可或缺的助手。最近&#xff0c;扫描全能王推出了革命性的“智能高清滤镜2.0”&#xff0c;本次更新后&#xff0c;智能高清滤镜能够智能识别并优化扫描过程中的各种问题。无论是光线不…

Redis优化之持久化

目录 1.Redis高可用 2.Redis持久化 2.1 RDB持久化 2.1.1 触发条件 2.1.2 执行流程 2.1.3 启动时加载 2.2 AOF持久化 2.2.1 开启AOF 2.2.2 执行流程 2.2.3 文件重写触发方式 2.2.4 文件重写的流程 2.2.5 启动时加载 2.3 RDB和AOF的优缺点 3.Redis性能管理 3.1 查看…

SSL证书在网站访问中的核心作用及快速申请指南

在当今的互联网时代&#xff0c;数据安全与用户隐私保护成为了网站运营不可或缺的一部分。SSL证书作为一种重要的网络安全协议&#xff0c;它在网站访问中扮演着至关重要的角色&#xff0c;主要体现在以下几个方面&#xff1a; 一、加密通信内容&#xff1a;SSL证书通过建立安…

2023年第十四届蓝桥杯JavaB组省赛真题及全部解析(上)

目录 前言&#xff1a; 一、试题 A&#xff1a;阶乘求和&#xff08;填空&#xff09; 二、试题 B&#xff1a;幸运数字&#xff08;填空&#xff09; 三、试题 C&#xff1a;数组分割 四、试题 D&#xff1a;矩阵总面积 五、试题 E&#xff1a;蜗牛 六、试题 F&#xff…

SpringMVC处理器映射器HandlerMapping详解

目录 一、前言 二、initHandlerMappings 三、处理器映射器架构 策略接口 请求链 模版类 四、RequestMappingHandlerMapping的初始化 HandlerMethod映射器模版类的初始化 AbstractHandlerMethodMapping.MappingRegistry&#xff1a;内部类注册中心 五、Reques…

电子名片小程序源码系统 前后端分离 带完整的安装代码包以及搭建教程

系统概述 电子名片小程序源码系统是一款基于前后端分离架构的综合性平台&#xff0c;旨在为用户提供一个集销售名片和企业商城于一体的解决方案。该系统采用先进的技术手段&#xff0c;实现了个性化名片设计、便捷的销售功能、企业商城模块等一系列实用功能。同时&#xff0c;…

72V转12V非隔离DC/DC电源原理图+PCB源文件

资料下载地址&#xff1a;72V转12V非隔离DCDC电源原理图PCB源文件 电动车所用的非隔离DC/DC电源&#xff0c;采用BUCK电路&#xff0c;运行稳定&#xff0c;为已经在产品中使用的电路 1、原理图 2、PCB

Python爬取中国天气网天气数据.

一、主题式网络爬虫设计方案 1.主题式网络爬虫名称 名称&#xff1a;Python爬取中国天气网天气数据 2.主题式网络爬虫爬取的内容与数据特征分析 本次爬虫主要爬取中国天气网天气数据 3.主题式网络爬虫设计方案概述&#xff08;包括实现思路与技术难点&#xff09; reques…

ET实现游戏中邮件系统逻辑思路(服务端)

ET是一个游戏框架&#xff0c;用的编程语言是C#&#xff0c;游戏引擎是Unity&#xff0c;框架作者&#xff1a;熊猫 ET社区 在游戏中我们通常都会看到有邮件系统&#xff0c;邮件系统的作用有给玩家通知、发放奖励等 下面小编使用ET框架带大家看一下邮件系统的一种实现方…

「C系列」C 经典练习实例

文章目录 1. 基本输入输出2. 字符串操作3. 数组与循环4. 函数与递归5. 逻辑与条件6. 数学问题7. 数字与数学8. 数组与字符串9. 逻辑与条件10. 结构体和联合体11. 指针12. 文件操作13. 动态内存分配相关链接 C语言经典练习实例及详细代码可以涵盖多个方面&#xff0c;从基础输入…

中国近10年AGV共部署了351700台……

导语 大家好&#xff0c;我是社长&#xff0c;老K。专注分享智能制造和智能仓储物流等内容。 新书《智能物流系统构成与技术实践》 根据网络上公开数据获得如下信息。仅供参考。 如下为中国近十年AGV部署的公开数据&#xff1a; 2014-2018年&#xff0c;中国AGV机器人累计销量达…

没有思考过 Embedding,不足以谈 AI

在当今的人工智能&#xff08;AI&#xff09;领域&#xff0c;Embedding 是一个不可或缺的概念。如果你没有深入理解过 Embedding&#xff0c;那么就无法真正掌握 AI 的精髓。接下来&#xff0c;我们将深入探讨 Embedding 的基本概念。 1. Embedding的基本概念 1.1 什么是 Emb…

【数据采集】亮数据浏览器、亮网络解锁器实战指南

前言 继上次我们写了数据采集与AI分析&#xff0c;亮数据通义千问助力跨境电商前行的文章之后&#xff0c;好多小伙伴来后台留言&#xff0c;表示对亮数据的数据采集非常感兴趣&#xff0c;并且感觉用起来非常顺手&#xff0c;大大减少了小白用户获取数据的成本。 在这儿&…

【python爬虫实战】爬取书店网站的 书名价格(注释详解)

思路来源&#xff1a;b站视频【【Python爬虫】爆肝两个月&#xff01;拜托三连了&#xff01;这绝对是全B站最用心&#xff08;没有之一&#xff09;的Python爬虫公开课程&#xff0c;从入门到&#xff08;不&#xff09;入狱 &#xff01;-哔哩哔哩】 https://b23.tv/M79rxMd …