rendered paste bodyuse File::Find;
use Digest::MD5;
find(\&listAll, "c:\\");
sub listAll {
$md5 = Digest::MD5->new;
$filename = $_;
if(-d $filename)
{
#get rid of directories
return "no directories";
}
open(FILE, "$filename")
or die;
binmode(FILE);
$md5->addfile(FILE);
close(FILE);
print "$File::Find::name ";
print $md5->hexdigest(), "\n";
}
output:
C:\>listall.pl
c:\/AUTOEXEC.BAT d41d8cd98f00b204e9800998ecf8427e
c:\/baseline1 0305eab2943842801884eae7b06ec657
c:\/boot.ini 6a289edcc9478818d47fa155be8bfd9a
c:\/CONFIG.SYS d41d8cd98f00b204e9800998ecf8427e
c:\/IO.SYS d41d8cd98f00b204e9800998ecf8427e
c:\/listall.pl 08a1a210e5340e2aaacebdc85c5518c7
c:\/MSDOS.SYS d41d8cd98f00b204e9800998ecf8427e
c:\/NTDETECT.COM cdce1413695a6ace7304e77f35aa3a37
c:\/ntldr eaad72a0cbd33f63d4cda5e933a5d6d8
Died at C:\listall.pl line 19.