У меня есть около 600 файлов mp3 в папке. Все треки имеют номера перед своими именами. Я хочу удалить номер дорожки из всех файлов. Я знаю, что могу переименовать эти файлы и удалить номера вручную. Но на смену всех файлов по одному уйдет так много времени. Я хочу знать, есть ли другой метод, который может удалить номер дорожки за раз? Для вашей информации я использую Ubuntu 12.04.Пожалуйста, помогите мне. Любые предложения и помощь будут действительно заметны. Спасибо
2 ответа
- Установите EasyTAG из Центра программного обеспечения Ubuntu.
- Откройте EasyTAG и перейдите в каталог, содержащий все ваши музыкальные файлы.
- Выберите все ваши файлы mp3 песни. Все они будут перечислены в средней панели, включая файлы песен, которые находятся в подкаталогах.
- Нажмите кнопку «Сканировать файл (ы)» в строке меню, на которой есть значок с изображением светло-зеленой и белой страницы.
- В опции "Сканер" выберите "Переименовать файл и каталог".
- В поле ввода с именем "Переименовать файл и каталог" введите % t.
- Нажмите на кнопку «Сохранить файл (ы)». На нем есть значок с изображением жесткого диска с зеленой стрелкой на нем. Подтвердите, что вы хотите, чтобы операция переименования применялась ко всем выбранным файлам.
Это все, что нужно сделать. Вы просто переименовали все 600 файлов. Это не меняет теги метаданных, только имена файлов.
Самый простой способ сделать это - rename
в командной строке. Например:
rename 's/^\d\d //' ./*.mp3
... это превратит файл с именем 01 trackname.mp3
в trackname.mp3
и будет работать на всех * .mp3s в рабочем каталоге.
\d
- это perlexpr для [0-9]
, а ^
означает «начало строки» (поэтому он не избавится от любых чисел в имени дорожки). Вы можете изменить /^\d\d /
чтобы соответствовать любому шаблону, который вы хотите - если вы хотите избавиться от -
, вы можете сделать это.
В качестве альтернативы вы можете использовать просто bash:
for f in ./*.mp3; do mv "$f" "${f#[0-9][0-9] }"; done
Если у вас есть файлы в нескольких каталогах, вам нужно использовать find
. Допустим, вы хотите переименовать каждый * .mp3 в ~/Music и всех его подкаталогах:
find ~/Music -type f -name '*.mp3' -exec rename 's/^\d\d //' {} \;
## or
find ~/Music -type f -name '*.mp3' -exec bash -c 'mv "$0" "${0#[0-9][0-9] }"' {} \;