Não tente analisar find
da saída, exceto como último recurso. É importante perceber que nos sistemas de arquivos Unix, os nomes de arquivos não são sequências (um equívoco comum), mas sim blobs binários que podem conter qualquer caractere, exceto /
e o caractere nulo. Analisar nomes de arquivos com segurança e corretamente é o suficiente para uma dor que 99% do tempo você só vai querer evitar fazê-lo completamente (apenas veja como a expressão sed
em% a
find . -name '*(1).m4a' -execdir sh -c \
'for arg; do mv "$arg" "${arg%(1).m4a}".m4a; done' _ {} \+