sub getdirsize { my( $dir ) = @_; my $size = 0; opendir( my $dh, $dir ) or die "Cannot opendir '$dir': $!\n"; for my $i ( readdir( $dh ) ) { my $s = -s "$dir/$i"; $size += $s; $size += getdirsize( "$dir/$i" ) if -d "$dir/$i" && $i !~ /^\.\.?$/; } # for closedir( $dh ); return $size; } # getdirsize