Renomeando múltiplos arquivos simultaneamente no Linux

Em: 20/02/2008 Tags: , Referencie do seu blog (Trackback)

Hoje, no trabalho, precisava renomear uma grande quantidade de arquivos de um mesmo diretório com uma regra bastante simples: queria que a extensão de todos eles passasse de .wbm para .wbmp. Encontrei, sem querer, o programa rename disponível no Ubuntu, e fui logo ler seu manual (man rename).

Infelizmente o manual era minúsculo, com apenas 2 exemplos. Achei, inicialmente, tão confuso que não entendi que no primeiro exemplo se encontrava a solução para o meu problema. Como estava com pressa acabei renomeando os arquivos no braço, mas eis aqui a solução, após uma pequena busca no Google (veja o segundo comentário deste artigo):

rename 's/\.wbm/.wbmp/' *.wbm

Depois de ler essa dica comecei a entender melhor o sucinto manual…

O primeiro parâmetro passado ao comando deve ser uma expressão regular compatível com Perl na forma:

'modificador/trecho-do-nome-que-se-deseja-alterar/como-vai-ficar-esse-mesmo-trecho/'

O último parâmetro é o padrão de nome de arquivo ao qual as mudanças definidas no primeiro parâmetro se aplicam. Consulte a documentação do Perl (link no fim do artigo) para entender quais são os modificadores válidos e o que significam.

Não sou o mago das expressões regulares para poder dar outros exemplos úteis, por isso, se você quer realizar procedimentos um pouco mais complexos, recomendo a leitura da documentação do Perl para expressões regulares.

Artigos relacionados:

2 respostas para “Renomeando múltiplos arquivos simultaneamente no Linux”

  1. Thânia Clair disse:

    Aqui deu! Pretty cool!! =)

    thania@einstein:~/Desktop$ l
    total 0
    -rw-r--r-- 1 thania thania 0 2008-02-20 21:57 a.txt
    -rw-r--r-- 1 thania thania 0 2008-02-20 21:57 b.txt
    -rw-r--r-- 1 thania thania 0 2008-02-20 21:57 c.txt
    thania@einstein:~/Desktop$ rename 's/\.txt/.php/' *.txt
    thania@einstein:~/Desktop$ l
    total 0
    -rw-r--r-- 1 thania thania 0 2008-02-20 21:57 a.php
    -rw-r--r-- 1 thania thania 0 2008-02-20 21:57 b.php
    -rw-r--r-- 1 thania thania 0 2008-02-20 21:57 c.php
    thania@einstein:~/Desktop$
    
  2. Thânia Clair disse:

    Sempre morro de raiva quando as extensões de imagens do Windows vêm em Maiusculas (.JPG, .PNG). É simplesmente horrível e quando puxo alguma de lá pra cá no Linux sempre sinto vontade de renomear tudo, mas uma a uma sem condições… Òtima dica. :P

Escreva um comentário (utilize o formato Markdown)