Я диджей и переименовываю 5000 музыкальных файлов для будущих концертов. Я ищу способ переименовать эти файлы в формате:

[artist/artists name] - [track title].[file extension]

все строчные

Есть ли способ использовать метаданные для случайного переименования имен файлов?

1 ответ1

0

Exiftool очень хорош в отношении переименования файлов на основе их метаданных. Пока метаданные были правильно заполнены, ваша команда будет выглядеть примерно так:
exiftool "-Filename<[$Artist] - [$Title].%le" -api "Filter=$_=lc" DIR

Замените DIR на каталоги (один или несколько), которые вы хотите обработать. Добавьте -r для рекурсии в подкаталоги. Если эта команда выполняется под Unix/Mac, поменяйте местами двойные / одинарные кавычки, чтобы избежать интерпретации bash.

Чтобы убедиться, что эта команда выполняет то, что вам нужно, замените Filename на Testname чтобы увидеть результаты, не переименовывая файлы.

Сломать:
-Filename< Указывает, что имя файла будет изменено. Знак «меньше» означает, что значение нового имени файла будет скопировано из внутренних тегов файла.
[$Artist] - [$Title] Формат имени файла с использованием тегов Artist и Title . По моим тестам это может быть либо ID3v1, либо ID3v2_3, а возможно и другие.
.%le - %e сама по себе является специальной переменной exiftool для расширения файла. Размещение l перед e заставляет его быть строчными.
-api "Filter=$_=lc" - фильтрует все выводимые теги по выражению perl после Filter= . В этом случае это будет нижний регистр тегов Artist и Title .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .