Массовая переименовка

Разные проблемы звука, видео, обсуждение разных устройств и т.д.

Модератор: Модераторы разделов

Аватара пользователя
.snif
Сообщения: 216
Статус: ..::[SnifeR]::..
ОС: Debian 5.0

Массовая переименовка

Сообщение .snif »

Запилил я себе радио-сервер с автодиджеем (shoutcast server + shoucast trans) ну и соответственно необходимо составить playlist, а т.к. музики у меня очень много и каждая песенка имеет своё название, прописывать их вручную в playlist можно вплоть до конча 2012 года. Подскажите утилиту/скрипт или ещё что, для массового переименования файлов (в моём случае это mp3 файлики песен), иными словами из списка к примеру:
parampampam.mp3
lalala.mp3
dododo.mp3
ololo.mp3

надо составить список вида:
1.mp3
2.mp3
3.mp3
4.mp3

ну и в том же духе.
Заранее благодарен.
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian

Re: Массовая переименовка

Сообщение diesel »

Код: Выделить всё

ls | while read k; do echo mv "$k" "$i".mp3; i=$((i+1)); done


принцип примерно такой
Спасибо сказали:
Аватара пользователя
.snif
Сообщения: 216
Статус: ..::[SnifeR]::..
ОС: Debian 5.0

Re: Массовая переименовка

Сообщение .snif »

diesel писал(а):
26.12.2009 15:07

Код: Выделить всё

ls | while read k; do echo mv "$k" "$i".mp3; i=$((i+1)); done


принцип примерно такой

чото не работает, ничего не переименовывается
Спасибо сказали:
allez
Сообщения: 2223
Статус: Не очень злой админ :-)
ОС: SuSE, CentOS, FreeBSD, Windows

Re: Массовая переименовка

Сообщение allez »

А если так?

Код: Выделить всё

i=1; ls | grep -i "mp3" | while read k; do echo mv -v "$k" "$i".mp3; i=$((i+1)); done

Что при этом выдается на экран? И еще один момент: при запуске этой конструкции необходимо находиться в каталоге с переименовываемыми файлами.
Спасибо сказали:
Аватара пользователя
.snif
Сообщения: 216
Статус: ..::[SnifeR]::..
ОС: Debian 5.0

Re: Массовая переименовка

Сообщение .snif »

allez писал(а):
26.12.2009 20:02
А если так?

Код: Выделить всё

i=1; ls | grep -i "mp3" | while read k; do echo mv -v "$k" "$i".mp3; i=$((i+1)); done

Что при этом выдается на экран? И еще один момент: при запуске этой конструкции необходимо находиться в каталоге с переименовываемыми файлами.

лист всех песен и новое название, однако ничего не переименовывается
.....
mv -v Lex De Core - Deep Inside Of The Melody (Club Mix).mp3 480.mp3
....
Спасибо сказали:
allez
Сообщения: 2223
Статус: Не очень злой админ :-)
ОС: SuSE, CentOS, FreeBSD, Windows

Re: Массовая переименовка

Сообщение allez »

Вот я слепендяй! :) Уберите команду echo:

Код: Выделить всё

i=1; ls | grep -i "mp3" | while read k; do mv -v "$k" "$i".mp3; i=$((i+1)); done
Спасибо сказали:
Аватара пользователя
.snif
Сообщения: 216
Статус: ..::[SnifeR]::..
ОС: Debian 5.0

Re: Массовая переименовка

Сообщение .snif »

allez писал(а):
26.12.2009 20:12
Вот я слепендяй! :) Уберите команду echo:

Код: Выделить всё

i=1; ls | grep -i "mp3" | while read k; do mv -v "$k" "$i".mp3; i=$((i+1)); done

благодарствую
Спасибо сказали:
allez
Сообщения: 2223
Статус: Не очень злой админ :-)
ОС: SuSE, CentOS, FreeBSD, Windows

Re: Массовая переименовка

Сообщение allez »

limon2008 писал(а):
26.12.2009 15:03
прописывать их вручную в playlist можно вплоть до конча 2012 года.

Это можно сделать во время переименования:

Код: Выделить всё

i=1; ls | grep -i "mp3" | while read k; do mv -v "$k" "$i".mp3; echo "$i.mp3" >> playlist.lst; i=$((i+1)); done

Если же файлы уже переименованы, то можно поступить следующим образом:

Код: Выделить всё

ls | grep -i "mp3" | while read i; do echo "$i" >> playlist.lst; done
Спасибо сказали: