my $dir = shift || "."; my $field = shift || 10; opendir(DIRH, $dir) or die "Cannot open $dir: $!"; my %file = map { $_ => (stat("$dir/$_"))[$field]} grep { !/^\.\.?$/ && /pm$/ } readdir DIRH; closedir(DIRH); for (sort { $file{$b} cmp $file{$a} } keys %file) { print "$_ , $file{$_} \n"; }