Em primeiro lugar, o comando ls -lR | egrep '^-' | rev | cut -d" " -f1 | rev
mostra apenas nomes de arquivos sem caminhos. Se você precisar obter todos os arquivos com caminhos, poderá usar find ./ -type f
e analisar essa saída. Portanto, o comando readlink -f $i
não será necessário.
Em segundo lugar, se você precisar de uma solução mais eficiente, precisará apenas do comando find
com o parâmetro exec
:
find . -type f -exec touch -d "$YESTERDAY" {} +
-type f find regular files