У меня есть несколько mp3-файлов, названных так:

исполнитель - год - альбом - трек - title.mp3

около половины из них из-за ошибки "переименовать из тега" названы так:

исполнитель - год - альбом - трек - название - - .mp3

как мне сделать, чтобы последний пример выглядел как первый в Ubuntu. Из-за ошибок в тегах я не могу использовать программу тегов для переименования файлов, не испортив правильные имена файлов, если только я не потратил много времени на поиск и выбор файлов с неправильным именем.

Если бы я мог переместить файлы с неправильным именем в другой каталог, я мог бы использовать программу-тег для исправления имен файлов, но как мне переместить ТОЛЬКО файлы с неправильным именем?

Спасибо

4 ответа4

1

Если у вас есть утилита rename , вы можете сделать что-то вроде:

rename -e 's/ - - //' *.mp3

На всякий случай, прежде чем запускать вышеописанное, запустите его с флагом -n для пробного запуска. Он не изменит никаких файлов, но покажет вам, что изменится, например:

$ rename -n -e 's/ - - //' *.mp3
rename(artist - year - album - track - title - - .mp3, artist - year - album - track - title.mp3)
0

Что-то вроде mv $(ls -1 | grep -- '- -') /path/to/dir_to_for_retagging/ . Лучше сделайте echo mv ... сначала посмотрите, что он будет делать.

0
mv *--.mp3 /path/to/dir

должно работать нормально.

0

что-то вроде

for i in $(ls *--.mp3); do mv $i `echo $i | sed s/--// ; done

(Непроверенные). Это удалит все - из имен файлов.

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