in reply to Retrieving a List of directories only

You're getting the directories for every file entry. You need to reject anything that isn't named "dot", then take the directory from which that's located:
find (sub {push @dirs, $File::Find::dir if $_ eq "."}, $path);

-- Randal L. Schwartz, Perl hacker