I do some shell scripting from time to time in my job...
This problem didn't seem so hard until I tried to play with it a bit...but it was. It's quite hard to read into an array or otherwise do something so that the part of the path separated by a space isn't treated as a separated path.
Anyway, try something like this:
find $PWD -type d|{
while read aline;do
cd "$aline"
do-some-commands-here...
done }
That's a pipe symbol "|" after the "d" and before the "{" .
HTH.