Sou DJ e estou renomeando 5.000 arquivos de música para shows futuros. Estou procurando uma maneira de renomear esses arquivos no formato:
[artist/artists name] - [track title].[file extension]
todas as letras minúsculas
Existe uma maneira de usar os metadados para renomear os nomes dos arquivos por acaso?
Responder1
Exiftoolé muito bom no que diz respeito à renomeação de arquivos com base em seus metadados. Desde que os metadados tenham sido preenchidos corretamente, seu comando seria algo como:
exiftool "-Filename<[$Artist] - [$Title].%le" -api "Filter=$_=lc" DIR
Substitua DIR pelos diretórios (um ou mais) que você deseja processar. Adicione -r
ao recurse em subdiretórios. Se este comando for executado em Unix/Mac, inverta quaisquer aspas duplas/simples para evitar a interpretação do bash.
Para ter certeza de que este comando faz o que você deseja, substitua Filename
por Testname
para ver os resultados sem realmente renomear nenhum arquivo.
Breakdown:
-Filename<
Indica que o nome do arquivo será alterado. O sinal de menor que indica que o valor do novo nome de arquivo será copiado das tags internas do arquivo.
[$Artist] - [$Title]
O formato do nome do arquivo usando as tags Artist
e Title
. Podem ser ID3v1 ou ID3v2_3, possivelmente outros, de acordo com meus testes.
.%le
- %e
por si só é uma variável especial exiftool para a extensão do arquivo. Colocar o l
na frente do e
força que fique em minúsculas.
-api "Filter=$_=lc"
- Isso filtra todas as tags geradas pela expressão perl após Filter=
. Nesse caso, as tags Artist
e serão minúsculas Title
.