如何在 Linux 中根据参考目录结构查找重复文件

如何在 Linux 中根据参考目录结构查找重复文件

Linux 上有几个重复文件查找器例如这里列出我已经尝试过 fdupes 和 fslint。但是,就我所见,它们会查找所选目录结构/搜索路径的所有重复项,因此也会查找仅存在于其中一个搜索路径中的重复项(如果您选择多个)。

然而,我需要/想要的是根据参考路径搜索重复项,其中我可以将一条路径定义为参考路径,并在另一个路径内搜索参考路径中存在的文件以删除它们。

我需要这样做,准备两个不同步的大型目录结构,其中一个比另一个更新(这将是我的参考)。大多数文件应该是两者之间的重复,但我怀疑,仍然有一些文件只在另一条路径上,所以我不想直接删除它。

是否有一些我忽略的 fdupes 选项可以实现这一点?

我曾尝试编写一个 Python 脚本来清理 fdupes 输出的列表,但没有成功。

答案1

林特可以这样做:

rmlint --types=duplicates --must-match-tagged --keep-all-tagged <path1> // <path2>

这将在 path1 中查找在 path2 中有重复项(相同数据内容)的文件。它将创建一个 shell 脚本,如果运行该脚本,将删除 path1 下的重复项,仅留下唯一文件。

相关内容