如何删除单独目录树中的重复文件?


10

我有两个目录:old/new/。中的某些文件与中的文件old/重复new/。有些仅具有相同的名称,有些甚至可能具有相同的内容但名称不同。我对文件的子目录路径不感兴趣,因此在匹配中只需要考虑不合格的文件名。

我想从中删除重复的文件old/,使其只包含在中也找不到的文件new/。对于文件名匹配但内容不匹配的情况,反之亦然,我想在一些日志中列出。

有没有人遇到过类似的问题,或者有比从头破解(perl或类似的)脚本更好的解决方案?以调用md5sum每个文件为主的运行时是可以接受的。

Answers:


7

当然!FSlint

FSlint是一个实用程序,用于查找和清除文件系统上各种形式的皮棉。IE在您的文件或文件名中出现不必要或有问题的内容。例如,它发现的一种皮棉形式是重复文件。它同时具有GUI和命令行模式。

替代文字

FSlint是免费的开源软件。


看起来足够接近我想要的东西。谢谢!
P-Nuts 2010年

8

fdupes-在给定的目录集中查找重复文件

fdupes new/ old/

-d表示删除

-N不要问

fdupes -N -d new/ old/

这样还会在每个目录中找到(并删除)重复项吗?换句话说,如果新的(或旧的)碰巧包含在旧的文件中可能找到或找不到的重复文件,这些文件也将被删除吗?我不认为fdupes严格来说是您的论点“新”和“旧”所暗示的差异程序。
Stephen Niedzielski
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.