Da pasta, você deseja alterar os nomes dos arquivos recursivamente:
find . -name '*.xxx.com.dat' -exec rename 's/xxx/yyy/' -- {} +
Eu tenho um monte de arquivo de log em um diretório e é o subdiretório chamado dataupload_sales_.xxx.com.dat
. Eu queria mudar todos os arquivos xxx.com
part para yyy.com
nos diretórios atual e secundário.
Espero que não seja um post duplicado, já que pesquisei no fórum e tentei poucas opções, mas nenhuma delas funcionou. algum post sugerido para usar renomear e é apenas renomear em arquivo único. onde eu tenho mais de 5000 subdiretórios no meu diretório e cada subdiretório tem mais de 100 .dat
de arquivos.
eu também tentei
find ./ -name "xxx.com" -exec bash -c 'mv $0 $(echo "$0" | sed -r \"s|xxx.com|yyy.com|g\")' '{}' \;
mostra um erro de diretório inválido
Da pasta, você deseja alterar os nomes dos arquivos recursivamente:
find . -name '*.xxx.com.dat' -exec rename 's/xxx/yyy/' -- {} +