Rekursion kannst du ganz prima mit dem Standardmodul File::Find erledigen ( http://perldoc.perl.org/File/Find.html ).Ich war mal so frei dein Programm umzuschreiben ;-)
#!/usr/bin/perl
use strict;
use warnings;
use File::Find;
use Digest::MD5 qw{md5_hex};
my $verzeichnis = 'PFAD_ZUM_VERZEICHNIS';
sub pruefsumme {
return md5_hex($_[0]);
}
sub dateien_pruefen {
if(-d $File::Find::name) {
print "Rekursion: $File::Find::name\n";
}
else {
print
"Pruefsumme von $File::Find::name\t",
#-d $File::Find::name,
"\n";
}
print DATEI
join "\t", (
$File::Find::name,
pruefsumme($File::Find::name),
( stat($File::Find::name) )[8,9],
-d $_
),
"\n"
;
}
open(DATEI, "+>>dateien.txt") || die "$!";
find(\&dateien_pruefen, $verzeichnis);
close(DATEI);
Datum: 02.03.2006-17:18
