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";