$ perl -wl use strict; my $dir = q{.}; opendir(DH, $dir) || die "can't opendir $dir: $!"; my %filesize = map { -s "$dir/$_" => $_ } readdir(DH); closedir DH; print "$filesize{$_} : $_" for(sort {$b <=> $a} keys %filesize); __END__