在 Linux 系统中,有几种有效的方法可以查找重复文件。以下是几种常用的方法:
fdupes
工具fdupes
是一个专门用于查找重复文件的工具,可以通过包管理器安装:
# Debian/Ubuntu
sudo apt install fdupes
# RHEL/CentOS
sudo yum install fdupes
# Arch Linux
sudo pacman -S fdupes
使用示例:
# 查找当前目录及其子目录中的重复文件
fdupes -r .
# 删除重复文件,只保留一份
fdupes -d -N -r /path/to/directory
find
和 md5sum
组合find /path/to/directory -type f -exec md5sum {} + | sort | uniq -w32 -dD
这个命令会: 1. 查找指定目录下的所有文件 2. 计算每个文件的 MD5 校验和 3. 排序结果 4. 找出重复的校验和并显示对应文件
rmlint
工具rmlint
是一个更强大的重复文件查找工具,可以处理大文件集:
# 安装
sudo apt install rmlint # Debian/Ubuntu
sudo yum install rmlint # RHEL/CentOS
# 使用
rmlint /path/to/directory
它会生成一个 shell 脚本 (rmlint.sh
) 来处理找到的重复文件。
fslint
图形界面工具对于喜欢 GUI 的用户:
# 安装
sudo apt install fslint # Debian/Ubuntu
# 运行
fslint-gui
jdupes
(fdupes 的增强版)# 安装
sudo apt install jdupes # Debian/Ubuntu
# 使用
jdupes -r /path/to/directory
-n
或 --dry-run
选项先查看结果而不实际删除以上方法可以根据您的具体需求选择使用,fdupes
和 jdupes
通常是命令行下最方便的选择。