用于根据filesize清理重复文件的脚本

时间:2011-03-11 03:09:07

标签: perl vbscript wsh

我在Windows XP计算机商店上有一些备份日志文件,如下所示:

1.txt
2.txt
3.txt
4.txt
5.txt

所有这些文件都有1-3个文件具有相同的文件大小,2-5个文件具有相同的文件大小。我想从每个具有相同文件大小的集合中存储其中一个并删除其余的。有人可以建议一个脚本吗?

1 个答案:

答案 0 :(得分:3)

来自File::Find::Duplicates(略微适应)的工作示例可能是一个好的开始:

use File::Find::Duplicates;

my @dupes = find_duplicate_files('/tmp/dup');

foreach my $dupeset (@dupes) { 
    printf "Files %s (of size %d) hash to %s\n",
    join(", ", @{$dupeset->files}), $dupeset->size, $dupeset->md5;
}

File::Find::Duplicates匹配大小和MD5校验和,这可能是你想要的。