Fdupes 是另一个在指定目录以及子目录中识别和移除重复文件的命令行工具。这是一个使用 C 语言编写的自由开源工具。Fdupes 通过对比文件大小、部分 MD5 签名、全部 MD5 签名,最后执行逐个字节对比校验来识别重复文件。
与 Rdfind 工具类似,Fdupes 附带非常少的选项来执行操作,如:
- 在目录和子目录中递归的搜索重复文件
- 从计算中排除空文件和隐藏文件
- 显示重复文件大小
- 出现重复文件时立即删除
- 使用不同的拥有者/组或权限位来排除重复文件
- 更多
安装 Fdupes
Fdupes 存在于大多数 Linux 发行版的默认仓库中。
在 Arch Linux 和它的变种如 Antergos、Manjaro Linux 上,如下使用 Pacman 安装它。
$ sudo pacman -S fdupes
在 Debian、Ubuntu、Linux Mint 上:
$ sudo apt-get install fdupes
在 Fedora 上:
$ sudo dnf install fdupes
在 RHEL、CentOS 上:
$ sudo yum install epel-release $ sudo yum install fdupes
用法
Fdupes 用法非常简单。仅运行下面的命令就可以在目录中找到重复文件,如:~/Downloads 。
$ fdupes ~/Downloads
我系统中的样例输出:
/home/sk/Downloads/Hyperledger.pdf /home/sk/Downloads/Hyperledger(1).pdf
你可以看到,在 /home/sk/Downloads/ 目录下有一个重复文件。它仅显示了父级目录中的重复文件。如何显示子目录中的重复文件?像下面一样,使用 -r 选项。
$ fdupes -r ~/Downloads
现在你将看到 /home/sk/Downloads/ 目录以及子目录中的重复文件。
Fdupes 也可用来从多个目录中迅速查找重复文件。
$ fdupes ~/Downloads ~/Documents/ostechnix
你甚至可以搜索多个目录,递归搜索其中一个目录,如下:
$ fdupes ~/Downloads -r ~/Documents/ostechnix
上面的命令将搜索 ~/Downloads 目录,~/Documents/ostechnix 目录和它的子目录中的重复文件。
有时,你可能想要知道一个目录中重复文件的大小。你可以使用 -S 选项,如下:
$ fdupes -S ~/Downloads 403635 bytes each: /home/sk/Downloads/Hyperledger.pdf /home/sk/Downloads/Hyperledger(1).pdf
类似的,为了显示父目录和子目录中重复文件的大小,使用 -Sr 选项。
我们可以在计算时分别使用 -n 和 -A 选项排除空白文件以及排除隐藏文件。
$ fdupes -n ~/Downloads $ fdupes -A ~/Downloads
在搜索指定目录的重复文件时,第一个命令将排除零长度文件,后面的命令将排除隐藏文件。
汇总重复文件信息,使用 -m 选项。
$ fdupes -m ~/Downloads 1 duplicate files (in 1 sets), occupying 403.6 kilobytes
删除所有重复文件,使用 -d 选项。
$ fdupes -d ~/Downloads
样例输出:
[1] /home/sk/Downloads/Hyperledger Fabric Installation.pdf [2] /home/sk/Downloads/Hyperledger Fabric Installation(1).pdf -
Set 1 of 1, preserve files [1 - 2, all]:
这个命令将提示你保留还是删除所有其他重复文件。输入任一号码保留相应的文件,并删除剩下的文件。当使用这个选项的时候需要更加注意。如果不小心,你可能会删除原文件。 (编辑:威海站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|