my @months = qw( Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec ); my @dates; for my $f (@files) { my $mod_time = (stat $f)[9]; my ($min, $hour, $day, $mon) = (localtime $mod_time)[1..4]; print "$f modified on $months[$mon] $day, $hour:$min\n"; # or if you want zero-padding... printf "%s modified on %3s %02d, %02d:%02d\n", $f, $months[$mon], $day, $hour, $min; }