opendir(DIRH, '.') or die "cant open $!"; my @files = grep !/^\.\.?/ && /.*pm$/, readdir DIRH; closedir DIRH; for (@files) { $file{$_} = (stat($_))[10]; } for (reverse sort { $file{$a} cmp $file{$b} } keys %file) { print "value : $_ , $file{$_} \n"; }