https://serverfault.com/questions/70939/how-to-replace-a-text-string-in-multiple-files-in-linux
https://serverfault.com/questions/228733/how-to-rename-multiple-files-by-replacing-word-in-file-name
https://serverfault.com/questions/212153/replace-string-in-files-with-fficient-file-extension
https://serverfault.com/questions/33158/searching-a-number-of-files-for-a-string-in-linux
Todos esses artigos mencionados responderam à minha pergunta. No entanto, nenhum deles funciona para mim. Eu suspeito que é porque a string que estou tentando substituir tem um # nela. Existe uma maneira especial de resolver isso?
Eu tenho um arquivo de imagem que foi substituído por # U00a9 durante uma migração de site. Estes são assim:
Lucky-#U00a9NBC-80x60.jpg
Lucky-#U00a9NBC-125x125.jpg
Lucky-#U00a9NBC-150x150.jpg
Lucky-#U00a9NBC-250x250.jpg
Lucky-#U00a9NBC-282x232.jpg
Lucky-#U00a9NBC-300x150.jpg
Lucky-#U00a9NBC-300x200.jpg
Lucky-#U00a9NBC-300x250.jpg
Lucky-#U00a9NBC-360x240.jpg
Lucky-#U00a9NBC-400x250.jpg
Lucky-#U00a9NBC-430x270.jpg
Lucky-#U00a9NBC-480x240.jpg
Lucky-#U00a9NBC-600x240.jpg
Lucky-#U00a9NBC-600x250.jpg
Lucky-#U00a9NBC.jpg
e eu quero mudar para algo assim:
Lucky-safeNBC-80x60.jpg
Lucky-safeNBC-125x125.jpg
Lucky-safeNBC-150x150.jpg
Lucky-safeNBC-250x250.jpg
Lucky-safeNBC-282x232.jpg
Lucky-safeNBC-300x150.jpg
Lucky-safeNBC-300x200.jpg
Lucky-safeNBC-300x250.jpg
Lucky-safeNBC-360x240.jpg
Lucky-safeNBC-400x250.jpg
Lucky-safeNBC-430x270.jpg
Lucky-safeNBC-480x240.jpg
Lucky-safeNBC-600x240.jpg
Lucky-safeNBC-600x250.jpg
Lucky-safeNBC.jpg
ATUALIZAR:
Todos esses exemplos começam com "LU00a9ucky, mas aqui estão muitas imagens com nomes diferentes. Estou simplesmente direcionando a parte" # U00a9 "da string para substituir por" safe ".
-n
é a no act
opção. O que permite ver se funciona antes de você realmente usá-lo. A saída na tela mostrou os possíveis novos nomes corretamente?
rename
comando Eu suspeito que seu renomear seria tão simples quantorename -n 's/#/safeNBC/' *.jpg
.