my %stats; for (<*>) { my $mtime = (stat)[9]; ## for atime, use (stat)[8] push @{$stats{$mtime}}, $_; } my $oldest = (sort { $a <=> $b } keys %stats)[0]; print "oldest: ", (join ',', @{$stats{$oldest}}), "\n"; #### my ($timestamp, $files) = ~0; for (<*>) { my $mtime = (stat)[9]; ## for atime, use (stat)[8] if ($mtime < $timestamp) { $timestamp = $mtime; $files = [ $_ ]; } elsif ($mtime == $timestamp) { push @{$files}, $_; } } print "oldest: ", (join ',', @{$files}), "\n";