use DateTime; use File::Find; # gefundene Dateinamen my @found; find (\&found, $dir); # Gestern 00:00:00 als Unixepoche (in Sekunden) my $yesterepoch = DateTime->today->add(days => -1)->epoch; sub found { my $fn = $File::Find::name; my $stat; if ( -f $fn # kein *.gz && $fn !~ /\.gz$/ # gestern 00:00:00 && ($stat = (stat($fn))[10]) >= $yesterepoch # gestern 23:59:59 && $stat <= $yesterepoch+86400-1 ) { push @found,$fn; # gefunden, dann abs ins Array } } print join "\n",@found;