When looping recursively through folders with files containing spaces the shell script I use is of this form, copied from the internet:
    while IFS= read -r -d $'\0' file; do
      dosomethingwith "$file"        # do something with each file
    done < <(find /bar -name *foo* -print0)
I think I understand the IFS bit, but I don't understand what the '< <(...)' characters mean. Obviously there's some sort of piping going on here.
It's very hard to Google "< <", you see.