Você não precisa for
fazer isso.
find "$dir" -type f
irá por padrão mostrar todos os objetos encontrados.
Você pode tornar isso explícito com:
find "$dir" -type f -print
Se você realmente quiser fazer uma iteração, use um separador nulo e xargs
:
find "$dir" -type f -print0 | xargs -0 -n1 echo
Ou find
: -exec
:
find "$dir" -type f -exec echo "{}" \;