Enquanto lê sobre 11.12 Limitações de Shell Builtins me deparei com o seguinte:
To loop over positional arguments, use:
for arg do echo "$arg" done
Você não pode deixar o fazer na mesma linha, pois algumas granadas não funcionam adequadamente:
for arg; do echo "$arg" done
Não parece explicar mais detalhes do que isso.
Tags shell-script portability