0
清理重複的文件,我已經有了一個Windows XP計算機存儲一些備份日誌文件如下:腳本基於文件大小
1.txt
2.txt
3.txt
4.txt
5.txt
他們都有將文件從1-3有相同的文件大小和2 -5具有相同的文件大小。我想從每個具有相同文件大小的集合中存儲其中的一個,並刪除剩下的部分。有人可以建議一個腳本來做到這一點?
清理重複的文件,我已經有了一個Windows XP計算機存儲一些備份日誌文件如下:腳本基於文件大小
1.txt
2.txt
3.txt
4.txt
5.txt
他們都有將文件從1-3有相同的文件大小和2 -5具有相同的文件大小。我想從每個具有相同文件大小的集合中存儲其中的一個,並刪除剩下的部分。有人可以建議一個腳本來做到這一點?
的從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校驗,這可能是你想要的比賽。
如果你有很多文件,按大小進行比較可能不是一個好主意。你必須小心[生日悖論](http://en.wikipedia.org/wiki/Birthday_problem)。 – Tmdean 2011-03-11 05:29:33
我有一百萬個日誌文件,順序更新了編號的時間戳,但有些文件相同。什麼是維護每個日誌文件只有一個副本的好方法? – iceman 2011-03-14 05:35:27