Como posso substituir recursivamente uma string em todas as pastas e nomes de arquivos por uma string diferente? Estou executando o Red Hat 6 e posso encontrá-los com:
find . -name \*string\*
Eu consegui fazer isso para strings dentro de arquivos:
find . -type f -exec sed -i 's/string1/string2/g' {} +
mas como eu poderia substituir de maneira semelhante todos os nomes de arquivos?
você pode substituir todos os nomes de arquivo usando
for
emv
comando.aqui estou substituindo todos os arquivos de texto começando com
abc
nomes porxyz
o comando abaixo substituirá os arquivos recursivamente em todas as pastas
Usando
find
erename
:É mais fácil com
zsh
'szmv
:Mudar para
Se você também deseja renomear arquivos ocultos ou arquivos em diretórios ocultos.