As várias citações do echo '
estão complicando a coisa.
Você pode usar apenas:
for f in *; do stat -- "$f"; done
Mas também
stat -- *
... e se você quiser coletar os arquivos e então aplicar o comando (por que?) você pode ir com (mas tenha cuidado com o arquivo contendo novas linhas ... (1))
for f in *; do echo "$f"; done | xargs stat --
... e se você quiser também arquivos ocultos, use apenas * .*
como padrão, mas lembre-se que .
e ..
estarão no conjunto .
Como um aparte, você não deve analisar ls
output .
(1) mas se você tem nomes de arquivos com novas linhas, você de alguma forma merece ...; -)