Renomear arquivos

Meu script
Eu escrevi um programa em Python que demorou menos de 24s para mais de 27500 arquivos: https://github.com/jbsilva/renamer
Ele remove espaços e troca caracteres especiais de forma recursiva.
Renameutils
sudo pacman -S renameutils
Fotos
exiftool -r -P \
-i '#recycle' \
-i '@eaDir' \
-i 'SYMLINKS' \
-i 'HIDDEN' \
-d '%Y%m%d_%H%M%S' \
'-filename<%f-${ImageSize}%-03c.%le' \
'-filename<${CreateDate}%-03c.%le' \
'-filename<${DateTimeOriginal}%-03c.%le' \
.
exiftool -r -P \
-i '#recycle' \
-i '@eaDir' \
-i 'SYMLINKS' \
-i 'HIDDEN' \
-d '%Y/%m' \
'-Directory<${CreateDate}' \
'-Directory<${DateTimeOriginal}' \
.
Se os arquivos já estiverem em alguma pasta:
find . \
-mindepth 1 -maxdepth 1 \
-type d \
-not \( -name '#recycle' -prune \) \
-not \( -name '@eaDir' -prune \) \
-print0 | xargs -0 -n1 \
exiftool -r -P -d '%Y%m%d_%H%M%S' \
'-filename<%f-${ImageSize}%-03c.%le' \
'-filename<${CreateDate}%-03c.%le' \
'-filename<${DateTimeOriginal}%-03c.%le' \
As pastas #recycle e @eaDir são comuns em NAS da Synology e devem ser ignoradas.
Aliases
Alguns aliases úteis:
alias recc='rename -X -c --rews --camelcase --nows'
alias qmvv='qmv --format=dc --options=spaces,width=40,autowidth'
alias qmvo='qmv --format=destination-only'
alias qmvor='qmv -R --format=destination-only'
alias exif_move="exiftool -P -i '#recycle' -i '@eaDir' -i 'SYMLINKS' -i 'HIDDEN' -d '%Y/%m' '-Directory<${CreateDate}' '-Directory<${DateTimeOriginal}' ."
alias exif_rename="exiftool -P -i '#recycle' -i '@eaDir' -i 'SYMLINKS' -i 'HIDDEN' -d '%Y%m%d_%H%M%S' '-filename<%f-${ImageSize}%-03c.%le' '-filename<${CreateDate}%-03c.%le' '-filename<${DateTimeOriginal}%-03c.%le' ."

Sou um engenheiro de computação brasileiro baseado na Alemanha, apaixonado por tecnologia, ciência, fotografia e línguas.
Programo há cerca de duas décadas, explorando desde aplicativos móveis e desenvolvimento web até aprendizado de máquina. Atualmente, foco em SRE de nuvem e engenharia de dados.
Sou voluntário nas comunidades de open source e Python, ajudando a organizar a PyCon DE e a PyData Berlin, mentorando e contribuindo com código e traduções.
No meu blog, compartilho dicas de Linux, guias de configuração e notas pessoais que escrevo para referência futura. Espero que outras pessoas também as considerem úteis. O conteúdo está disponível em vários idiomas.
Visite minha galeria para ver algumas das minhas fotografias.
Longe do teclado, você vai me encontrar em shows, tocando clarinete, pedalando, mergulhando ou explorando novos lugares, culturas e culinárias.
Sempre feliz em me conectar! 🙂