tl; dr: перейти к последнему абзацу
Я недавно изменил формат имени файла, который я использую в Exact Audio Copy при копировании CD. Я изменил его так, чтобы для компакт-дисков разных исполнителей номер трека, а затем название компакт-диска был на первом месте.
Это хорошо для любых новых компакт-дисков, которые я копирую, но те, которые я уже скопировал, все еще используют старую схему именования. Очевидно, что перезаписать их будет гораздо больше, чем просто переименовать их.
Проблема заключается в том, что помимо простого переименования файлов необходимо также изменить папку, в которой они находятся, и список воспроизведения (и, предпочтительно, также журнал), поэтому переименование вручную, хотя и возможно, также является довольно трудоемким процессом.
Существует множество утилит для переименования MP3, но я не видел ни одной, которая специально вносит изменения в папки, списки воспроизведения и журналы.
Кто-нибудь знает простой способ переименования файлов, папок и списков воспроизведения с помощью масок? (На самом деле, поскольку теги не нужно обновлять, технически мне не нужен переименователь MP3, просто переименователь файлов, который также может - автоматически - переименовывать папку и обновлять имена файлов в текстовом файле.)
Например, файлы, папки и записи в списке воспроизведения (и журнале) должны быть изменены следующим образом:
old filename/foldername mask and corresponding file/folder-names:
"Various (%C-%Y)\%A [%T] %N (%C)"
C:\Various (Foobar OST-2011)\Bob Bobson [Rap Song] 01 (Foobar OST).mp3
new filename/foldername mask and corresponding file/folder-names:
"Various (%C - %Y)\%N (%D) %A [%T]"
C:\Various (Foobar OST - 2011)\01 (Foobar OST) Bob Bobson [Rap Song].mp3
Чтобы было ясно, программа должна иметь возможность принимать маску имени файла / имя_фолдера (FNFN), соответствующую существующим FNFN, и переставлять FNFN в соответствии с новыми масками FNFN, а затем обновлять эти FNFN внутри некоторых текстовых файлов.
(Да, я знаю, что это вещи Perl и regex, но я не знаю ни одного инструмента Windows, который может легко выполнить эту задачу.)