Массовое переименование файлов. (Нужна программа.)

Софт под Linux, разные программы, но только связанные с Linux

Модератор: /dev/random

Ответить
ksaphan
Сообщения: 69

Массовое переименование файлов.

Сообщение ksaphan »

Помогите найти программу под линукс для массового переименования файлов.
Например у меня есть 100 файлов, и нужно чтобы программа в имени каждого поменяла второй символ на пробел, ну и чтобы реализовывала и другие возможности переименования.
Спасибо.
Спасибо сказали:
Аватара пользователя
Valerius
Бывший модератор
Сообщения: 1469
Статус: Отпетый КДЕ'шник

Re: Массовое переименование файлов.

Сообщение Valerius »

krename
Свобода есть тонкая полоска между диктатурой и анархией.

---------------------
Mandriva Linux PowerPack 2006 (Cooker-нутая) / KDE-3.5.1
Спасибо сказали:
Аватара пользователя
Kuzja
Сообщения: 675
Статус: розовая хрюшка
Контактная информация:

Re: Массовое переименование файлов.

Сообщение Kuzja »

Можно такое делать скриптом (bash, python, perl) - они для этого и предназначены.
/Ubuntu-Dapper6/Xorg7.0/GNOME-2.14.1/
Спасибо сказали:
Аватара пользователя
madskull
Сообщения: 1019
Статус: Экс-металлюга
Контактная информация:

Re: Массовое переименование файлов.

Сообщение madskull »

rename
ArchLinux / IceWM
Спасибо сказали:
ksaphan
Сообщения: 69

Re: Массовое переименование файлов.

Сообщение ksaphan »

Вот как-то про скрипты я не подумал.
Сделаю на перле.
Спасибо сказали:
Аватара пользователя
mint_99
Сообщения: 673
ОС: OpenSUSE 42.1

Re: Массовое переименование файлов.

Сообщение mint_99 »

Нужно удалить несколько символов в именах группы файлов. Копался с KRename и с Gwenrename, но нашёл только добавление символов. Можно ли с помощью этих прог выполнить мою задачу?
Наверное путано объяснил, поясню на примере:
01.Вася Пупкин - Зима.mp3
02.Вася Пупкин - Лето.mp3
надо поубирать цифры в начале имён.
Можно на "ты".
Спасибо сказали:
Аватара пользователя
Alexxx
Сообщения: 892
Статус: --==XXX==--
ОС: Archlinux current

Re: Массовое переименование файлов.

Сообщение Alexxx »

mint_99 писал(а):
03.06.2006 01:18
Нужно удалить несколько символов в именах группы файлов. Копался с KRename и с Gwenrename, но нашёл только добавление символов. Можно ли с помощью этих прог выполнить мою задачу?
Наверное путано объяснил, поясню на примере:
01.Вася Пупкин - Зима.mp3
02.Вася Пупкин - Лето.mp3
надо поубирать цифры в начале имён.

В krename это делается без проблем:
Спасибо сказали:
Аватара пользователя
mint_99
Сообщения: 673
ОС: OpenSUSE 42.1

Re: Массовое переименование файлов.

Сообщение mint_99 »

Alexxx, спасибо! У меня ума не хватило нажать на "функции". Кстати, [5-] приводит к аналогичному результату.
Можно на "ты".
Спасибо сказали:
Аватара пользователя
madskull
Сообщения: 1019
Статус: Экс-металлюга
Контактная информация:

Re: Массовое переименование файлов.

Сообщение madskull »

а я бы не задумываясь сделал бы:

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

for i in *; do mv "$i" "${i#*.}"; done

по любому быстрее выйдет
ArchLinux / IceWM
Спасибо сказали:
bugel
Сообщения: 225

Re: Массовое переименование файлов.

Сообщение bugel »

не задумываясь делаю на питоне :D
С уважением, bugel
Спасибо сказали:
Аватара пользователя
t.t
Бывший модератор
Сообщения: 7390
Статус: думающий о вечном
ОС: Debian, LMDE

Re: Массовое переименование файлов.

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

(madskull @ Jun 3 2006, в 10:32) писал(а):а я бы не задумываясь сделал бы:

Код
for i in *; do mv "$i" "${i#*.}"; done

по любому быстрее выйдет
Или rename 's/^\d+\.//' *
Кстати, интересно, какой быстрее из этих двух вариантов.. проверять -- лень. :)

(bugel @ Jun 3 2006, в 11:12) писал(а):не задумываясь делаю на питоне
А я бы лучше задумался и использовал rename :)
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
Спасибо сказали:
bugel
Сообщения: 225

Re: Массовое переименование файлов.

Сообщение bugel »

А я бы лучше задумался и использовал rename

Я ренегат :ph34r: , пользую и линух и винду, поэтому мне на питоне удобнее, он что там, что там, ну иногда с мелкими доработками. :D
С уважением, bugel
Спасибо сказали:
Аватара пользователя
madskull
Сообщения: 1019
Статус: Экс-металлюга
Контактная информация:

Re: Массовое переименование файлов.

Сообщение madskull »

t.t писал(а):
03.06.2006 14:26
(madskull @ Jun 3 2006, в 10:32) писал(а):а я бы не задумываясь сделал бы:

Код
for i in *; do mv "$i" "${i#*.}"; done

по любому быстрее выйдет
Или rename 's/^\d+\.//' *
Кстати, интересно, какой быстрее из этих двух вариантов.. проверять -- лень. :)



Хорошо вам, дебиановцам и альтовцам. А в арче нет перлового rename, есть только "обычный", из util-linux. Все руки не доходят разобраться с этим безобразием.
ArchLinux / IceWM
Спасибо сказали:
Аватара пользователя
WarlorD
Сообщения: 728
Статус: хочешь пропатчить KDE под FreeBSD - спроси меня как!
ОС: FreeBSD, Debian GNU\Linux

Re: Массовое переименование файлов.

Сообщение WarlorD »

на перле несколько строк и все ок, лично я бы ради такой задачи не стал ставить никаких krename:)
FreeBSD
Debian GNU\Linux
Компьютер позволяет решать все те проблемы, которые до изобретения компьютера не существовали.
Спасибо сказали:
Аватара пользователя
t.t
Бывший модератор
Сообщения: 7390
Статус: думающий о вечном
ОС: Debian, LMDE

Re: Массовое переименование файлов.

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

(WarlorD @ Jun 4 2006, в 01:12) писал(а):на перле несколько строк и все ок, лично я бы ради такой задачи не стал ставить никаких krename:)
Да зачем пара строк-то? См.выше про rename или for.
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
Спасибо сказали:
Аватара пользователя
WarlorD
Сообщения: 728
Статус: хочешь пропатчить KDE под FreeBSD - спроси меня как!
ОС: FreeBSD, Debian GNU\Linux

Re: Массовое переименование файлов.

Сообщение WarlorD »

ну зато с парой строк можно функционала накрутить всякого самому:) так ессно rename справится.
FreeBSD
Debian GNU\Linux
Компьютер позволяет решать все те проблемы, которые до изобретения компьютера не существовали.
Спасибо сказали:
Аватара пользователя
SerW
Сообщения: 402
ОС: macOS& Fedora Workstation Latest
Контактная информация:

Re: Массовое переименование файлов.

Сообщение SerW »

Помогите, пожалуйста, мне нужны два однострочника на баше:
  • В папке есть много поддиректорий, в них находятся файлы, в том числе с расширением .torrent и .torrent.added Хотелось бы, чтобы все '.torrent.added' были переименованы в '.torrent'.
  • В той же папке и тех же поддиректориях есть файлы, которые имеют в своим имени символы, запрещенные в НТФС. Хотелось бы переименовать их так, чтобы этих символов в именах файлов и папок не было


Насколько я могу судить по http://insidepro.com/kk/044/044r.shtml, запрещены символы ", *, /, :, <, >, ?, \, |
Также "имя файла не может заканчиваться на точку или пробел. Максимально допустимая длина имени составляет 255 символов."

И еще впрос: можно ли как-то настроить Убунту так, чтобы пользовательские файлы на ext4 всегда сохранялись с совместимым с НТФС именем?
Сергей Ш. » DragonSerW.RU
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Массовое переименование файлов.

Сообщение Bizdelnick »

SerW
Вы бы хоть тему эту прочитали. Выше неоднократно упоминалась rename (которая на самом деле prename).
1. find . -type f -exec prename 's/\.torrent\.added$/.torrent/' {} + или find . -type f -exec rename.ul .torrent.added .torrent {} +
2. find . -type f -exec prename 's/["*:<>?\\|]/_/g' {} + заменит символы из этого набора на _.

SerW писал(а):
21.11.2013 20:11
И еще впрос: можно ли как-то настроить Убунту так, чтобы пользовательские файлы на ext4 всегда сохранялись с совместимым с НТФС именем?

Может просто пользователю не использовать таких странных символов в именах файлов?
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Массовое переименование файлов.

Сообщение drBatty »

Bizdelnick писал(а):
21.11.2013 22:32
которая на самом деле prename

на самом деле их 2 штуки разных. Prename -- одна из них.
SerW писал(а):
21.11.2013 20:11
можно ли как-то настроить Убунту так, чтобы пользовательские файлы на ext4 всегда сохранялись с совместимым с НТФС именем?

нет.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Массовое переименование файлов.

Сообщение drBatty »

можно написать скрипт, который:
  • создаёт файл t2
  • ищет все файлы созданные юзером новее t1
  • переименовывает найденные файлы так, что-бы эти ваши "*" переименовывались в html-сущности или там в utf-8, или там вообще выкидывались
  • после чего переносит t2 -> t1

и запускать этот файл crond'ом каждые N минут.

Костыль конечно, но вы сами хотели маздайную нтфс.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
SerW
Сообщения: 402
ОС: macOS& Fedora Workstation Latest
Контактная информация:

Re: Массовое переименование файлов.

Сообщение SerW »

Bizdelnick, drBatty, благодарю вас за ответы. Тему я читал, конечно, но написать что-то самому - это для меня сложно.
Сергей Ш. » DragonSerW.RU
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Массовое переименование файлов.

Сообщение Bizdelnick »

drBatty писал(а):
22.11.2013 11:30
на самом деле их 2 штуки разных. Prename -- одна из них.

Да, я знаю. См. выше, там примеры с prename без уточнений. Насколько я знаю, rename является по умолчанию симлинком на prename только в Debian и клонах, поэтому и уточнил.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Массовое переименование файлов.

Сообщение drBatty »

SerW писал(а):
22.11.2013 13:06
но написать что-то самому - это для меня сложно.

м... Если вы отрезали ногу, и ходите с протезом, то костыль вам пригодится. А ещё больше пригодится скиллы костыльных дел мастера.

NTFS -- это протез. Причём пришедший к нам из глубокой древности без изменений в основе, и только с новыми рюшечками из синтепона. Без изготовления специальных костылей тут никак...

PS: может лучше ноги оставить?

Bizdelnick писал(а):
22.11.2013 13:11
Насколько я знаю, rename является по умолчанию симлинком на prename только в Debian и клонах, поэтому и уточнил.

я тоже только уточнил. Ещё добавлю, что хотя и в не deb нету prename по дефолту, но её не сложно поставить. И она отлично переименовывает, без всяких костылей (ибо сама по себе -- костыль).
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Ответить