Renomeando arquivos simultaneamente com apenas uma linha de comando
Situação: Você baixou aquelas 30 fotos de sua máquina digital (ou celular), só que as mesmas são nomeadas com tipos nada convidativos:
20080131imgmfd, awihdh007, etc...
Aí você pensa: "Eu queria renomear essas fotos seguindo um padrão tipo: Foto_1, Foto_2, ..., Foto_30."
Como fazer? Não se preocupe mais meu amigo, seus problemas acabaram! Veja:
1 - Abra um terminal e acesse o diretório onde você baixou as fotos:
$ cd /tmp/fotos
2 - Estando no diretório, digite:
$ ctd=1 ; for i in * ; do mv $i Foto_${ctd}.jpg ; ((ctd++)) ; done
Onde:
- "ctd=1" - Variável que recebe um valor numérico que servirá como contador.
- "for i in ..." - Loop responsável por listar todos os arquivos do diretório corrente e repassá-los um-a-um ao comando 'mv'.
- "mv ..." - Comando que, além de mover arquivos, também pode ser utilizado para renomeá-los.
- "Foto_${ctd}.jpg" - Novo nome das fotos, seguido do contador numérico ($ctd) e a extensão (.jpg).
- "((ctd++))" - Construção responsável por incrementar a variável 'ctd' em um (1), a cada passada do loop.
Pronto! Agora suas fotos estão todas renomeadas seguindo um padrão. Viu como é simples, fácil, prático e rápido!
Falou!!!
Outras dicas deste autor
Copiar e colar no XTerm
Ordenando uma lista de IPs (IPv4) com o sort
Habilitando correção ortográfica no Vim
Overclock em placas de vídeo NVIDIA
CAT - Descobrindo informações sobre sua distribuição
Leitura recomendada
Convertendo arquivos .doc para .txt via linha de comando
Montando compartilhamentos remotos do Windows no Linux
Aproveitando o Poder do Comando grep no Linux
Comando expr
Comando ALIAS para facilitar sua vida
Comentários
Sandro, realmente fantástico!
Adorei a dica, esta mesmo procurando algo semelhante.
Eu tbm tava... Parabens!
Muito obrigado!
Precisei, usei e funcionou.