Hi an alle. Ich bin noch im Anfangsstadium und ich möchte hinkriegen das auch mit der "größe der Datei" max. 10 ausgegeben werden. Helft mir dummerchen mal bitte!
#!/usr/bin/perl -w
use File::Find;
foreach $arg (@ARGV) { # Alle angegebenen Verzeichnise durchlaufen
File::Find::find(&fc, $arg); # und %Filesbydate aufbauen
}
$maxcount = {0,10}; # Maximal 10 Dateien ausgeben
# Auswertung : Nach letztem Datum sortieren
hash:foreach $date (sort { $b <=> $a } keys %Filesbydate)
{
# Listen von Einträgen gleichen Datums
$timestr = localtime($date);
foreach $file (@{$Filesbydate{$date}})
{
# Ausgabe mit Datum
print "$file(", $timestr, ")\n";
last hash unless $maxcount--;
}
}
sub fc {
return unless -f; # keine Directories
my $filedate = (stat($_))[9];
my $filesize = (stat($_))[7];
print "$_ $filesize\n";
# Datum noch nicht belegt:
# Neue Listenreferenz
$Filesbydate{$filedate} = [] unless
exists $Filesbydate{$filedate};
# Eintrag in Liste aufnehmen
push(@{$Filesbydate{$filedate}}, "$File::Find::dir/$_");
}