Se você tiver, use a opção -execdir
para find
em vez de -exec
.
-
-exec
executa o comando da raiz do comando com cada caminho como um argumento -
-execdir
executa o comando no diretório de destino com cada nome de arquivo como um argumento
Assim,
find . -type f -execdir rename -v 's/[^a-zA-Z0-9 &](?=[^.]*\.)/_/g' '{}' \;