Existe uma ferramenta para isso chamada rename
:
rename 's/File30/File20/' *.txt
Para uma pré-visualização com -n
:
rename -n 's/File30/File20/' *.txt
Eu tenho uma tonelada de arquivos chamados File30_i.txt
para i=1, 2, 3, 4, 5
...
Existe uma maneira fácil de renomear rapidamente o File20_i.txt
, por exemplo?
Minha maneira preferida seria usar o sed para gerar um script para ele, por exemplo:
ls -1|sed 's/File30_\([^.]*\).txt/mv & File20_.txt/'|bash
Isso deve renomear de acordo com os nomes de arquivos que você forneceu na pergunta. Para visualizar os comandos, você pode fazer:
ls -1|sed 's/File30_\([^.]*\).txt/mv & File20_.txt/'
renamer funciona em Windows, Mac e Linux:
$ renamer --find Find30 --replace Find20 *.txt