use File::Find; my $size; find(sub{ -f and ( $size += -s ) }, $data ); $size = sprintf("%.02f",$size / 1024 / 1024); if ($size > 2048) { print "Directory $data contains $size MB\n"; }