В таких случаях мой подход состоит в том, чтобы создать список перед командой for
и заменить пробелы в именах элементов другим символом или строкой, которые вряд ли появятся.
Затем внутри цикла я заменяю эту конкретную строку пробелом.
Пример:
list=`find -foo -bar -baz | tr ' ' 'µ'`
for fx in $list ; do
f=`echo $fx | tr 'µ' ' '`
process "$f"
done