in reply to File::Find problems

my $volume_name = "/Volumes/Volume Name/"; for (glob "$volume_name/*") { if (-d) { say $_; find(\&wanted, $_); } }

You have a trailing slash on the assignment to $volume_name and then you add another slash when you use $volume_name with glob, ergo, two slashes.

You could try it like this:

find \&wanted, grep -d, glob '/Volumes/Volume Name/*';