Простой вопрос по linux rename

forest25
На сайте с 12.09.2009
Offline
67
1291

Добрый день!

Задался тут задачей переименовать кучу файлов с разными названиями в name01.jpg name02.jpg name03.jpg и т.д.

Для этого пробовал задействовать утилиту rename, но ничего путного у меня не получилось.

rename 's/^[A-z0-9]+/name/' *.jpg

Подскажите пожалуйста что в ней добавить чтобы в файлам добавился цифровой индекс?

VPS 512MB 20GB SSD KVM - 5$ (http://u.hmdw.me/digitalocean) | ИМХО о хостингах (http://u.hmdw.me/hosting)
Raistlin
На сайте с 01.02.2010
Offline
247
#1

Зачем такие сложности? :-)

В Dolphin находите нужную папку с файлами в которых полный бардак.

Выделяете все файлы "Правка" > "Выделить всё"> в окне курсором мышки становитесь на выделенное, при нажатии правой кнопки мыши появляется меню, выбираете "Перименовать", появляется окошко в котором написано "объект" и #. Вместо объекта ставите все что хотите и нажимете ОК и будет вам счастье переименованное с 1 и до......

HostAce - Асы в своем деле (http://hostace.ru)
forest25
На сайте с 12.09.2009
Offline
67
#2

В том то и дело что для переименования через гуй вариантов полно, а хочется постигнуть дзен =)

Утилита rename вообще имеет функцию подсчета файлов и подставления счет чика в название? Громоздкие конструкции в баш с циклами for использовать тоже не хочется )

Raistlin
На сайте с 01.02.2010
Offline
247
#3

Только скриптом, насколько мне известно. Попробуйте посмотреть доку к утилите (если не ошибаюсь, она в перловской поставке, потому надо читать доку к перловке.

Или вот простейшее на bash:

x=1; for i in *.gif ; do mv $i image$x.gif;x=$(($x+1)); done



---------- Добавлено 17.02.2012 в 14:34 ----------

А вот чтобы начальные подставляло

x=1000; for i in *.gif ; do mv $i image$x.gif;x=$(($x+1)); done



---------- Добавлено 17.02.2012 в 14:35 ----------

А, вот нагуглил:

rename 'no strict; $_=sprintf "image%03d.gif",$i++' *.gif
forest25
На сайте с 12.09.2009
Offline
67
#4

Спасибо! =) Так проще получается )

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий