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