Warning

 

Close

Confirm Action

Are you sure you wish to do this?

Confirm Cancel
BCM
User Panel

Site Notices
Posted: 12/30/2005 6:47:02 PM EDT
Any good programs (free) that will search windows for files that are exact duplicates of each other (same file size and date)?

Link Posted: 12/30/2005 6:47:50 PM EDT
[#1]
search for one called "clonespy"
Link Posted: 12/30/2005 10:07:48 PM EDT
[#2]
You can write this up in Perl in a few minutes, easiest if you use Knoppix so that you can use UNIX command-line file finding tools.

mount /mnt/hda1 (or whatever your drive shows up as)
find /mnt/hda1 -type f -print
open each file, use size as the key to add into an associative array of lists
every time you get a "hit" (identical key), compare the files ("cmp -l" or "fc /b" depending on UNIX or Windoze);  if they don't match, add the second file to the list for that key.

This has the added benefit of comparing contents rather than mere attributes like size and date.

You could also use md5sum on each file as the key, but this takes a lot longer since you're calculating a lot of unneeded sums -- I use this to do an antivirus check on my work Win2k drive (starting from a clean install) to eliminate the risk of viruses, keyloggers, and other traps.
Link Posted: 1/10/2006 6:25:27 PM EDT
[#3]
I use "duplic8".
Link Posted: 1/10/2006 6:34:16 PM EDT
[#4]
out of control porn?
Link Posted: 1/10/2006 6:37:01 PM EDT
[#5]

Quoted:
out of control porn?



out of control digital camera pics.

I tried clonespy but it was giving me weird results. So I just consolidated everything in one direcotry that I could find.
Link Posted: 1/10/2006 6:39:00 PM EDT
[#6]
Tag...

Tag...

I got dupe problems too...


ByteTheBullet  (-:
Link Posted: 1/10/2006 6:41:34 PM EDT
[#7]

Quoted:
You can write this up in Perl in a few minutes



I've already done it.

#!/usr/bin/perl

use String::CRC32;
use File::Find;
use Cwd;

@liste = ();
find(\&findind, cwd);



sub findind {

   if (-f) {

       if (-s > 0) {

       open(file, $_) or die "fuckup $_ $! \n";
       $crc = crc32(*file);
       close(file);
       #print "filnavn $_ crc $crc katalog $cwd \n";
       $path = join "", cwd, "/", $_;
       push(@liste, {"filnavn" => $path , "crc" =>$crc});
   } else {
       print "filen $_ er tom \n";
   }

   }
}
for ($i=0;$i<=$#liste;$i++) {
   $crc = @liste[$i]->{crc};
   $path = @liste[$i]->{filnavn};
   for ($y=0;$y<=$#liste;$y++) {
       if ($crc == @liste[$y]->{crc} && $path ne @liste[$y]->{filnavn}) {
           print "match $path og @liste[$y]->{filnavn}  \n";
           
       }

   }


}
Link Posted: 1/10/2006 6:43:50 PM EDT
[#8]
damn, I was about to ask the same question.

I have a wierd partitioned HD with C=12gig and D=68gig and I'm running out of space on C and started putting programs on D too. Now I have duplicate programs all over the place. Any suggestions?
Link Posted: 1/10/2006 7:08:55 PM EDT
[#9]

Quoted:
damn, I was about to ask the same question.

I have a wierd partitioned HD with C=12gig and D=68gig and I'm running out of space on C and started putting programs on D too. Now I have duplicate programs all over the place. Any suggestions?



buy a new hard drive and transition over there.
Close Join Our Mail List to Stay Up To Date! Win a FREE Membership!

Sign up for the ARFCOM weekly newsletter and be entered to win a free ARFCOM membership. One new winner* is announced every week!

You will receive an email every Friday morning featuring the latest chatter from the hottest topics, breaking news surrounding legislation, as well as exclusive deals only available to ARFCOM email subscribers.


By signing up you agree to our User Agreement. *Must have a registered ARFCOM account to win.
Top Top