#!/usr/bin/perl # list directories by number of entries in cwd and down # Sean Brunnock use File::Find; sub countfiles { if (-d) { opendir(THISDIR, $_); @filecount = readdir(THISDIR); closedir(THISDIR); $size{$File::Find::name} = (scalar(@filecount)-2); # subtract cwd and parent dir } } find(\&countfiles, '.'); @sorted = sort {$size{$b} <=> $size{$a}} keys %size; printf "%6d %s\n", $size{$_}, $_ for (@sorted);