Страница 44 из 52

Добавлено: Сб окт 20, 2018 04:55
Oleg+O
Народ.

Как я понимаю, это несложно реализуется.
Есть папки 001-650. В некоторых в корне файлы, в некоторых в подпапке. Файлы - каринки, jpg. Нужно файлы переименовать, в каждой папке с 1 и до последнего файла, просто нумерация (1.jpg, 2.jpg....) . И если они в подпапке - вытащить в корень (например 001/морегоры/23942.jpg вытащить в 001/1.jpg, папку морегоры удалить).
Никогда скрипты не писал...

Как я вижу алгоритм. .Есть папка, 1 уровень. В ней подпапки, 2 уровень. Запусить цикл, в котором все файлы ниже будут перемещаться во 2 уровень.
Дальше все каталоги 3 и далее уровней удаляются таким же циклом.
Далее, во 2 уровне переименовываем все файлы по схеме [1, 2, 3].jpg.

Мануал поищу, может сам что придумаю...

Добавлено: Сб окт 20, 2018 14:48
Flasher
Oleg+O
Не ленитесь искать. По нумерации обсуждение было, как и по предварительному перемещению (найденных и выбранных файлов) на уровень выше.

Добавлено: Пн апр 01, 2019 16:46
shadow_405
Всем привет!
Подскажите, пожалуйста, можно ли осуществить такой вариант группового переименования?
Имеются файлы вида:
1959, № 11
1959, № 13
1959, № 13а
1965, № 116
1965, № 118
1965, № 118а
Задача - поменять последнюю цифру, например - в первых 3 файлах увеличив её на 1, а в трех оставшихся - на 2. При этом в ряде случаев после цифры стоит буква, тогда нужно поменять цифру перед буквой, не меняя букву.

Добавлено: Пн апр 01, 2019 16:57
Avada
shadow_405
Давайте не только "например", но и понятный общий алгоритм. Файлов что — в любой папке по шесть штук? Или то, на сколько увеличивать, зависит от числа цифр? Объясните нормально.

Добавлено: Пн апр 01, 2019 17:48
shadow_405
Avada
Спасибо за быстрый ответ!)
Нет, конечно, файлов сотни, иначе проще было бы сделать вручную.
Речь о большом количестве картинок в формате jpg, иллюстрирующих каталог коллекции. Картинки имеются не ко всем элементам каталога, поэтому номера картинок идут не подряд.
Нумерация начинается с номера 1 для каждого года, и доходит временами где-то до 700, включая элементы "а" и "б".
Если в каталоге появляется новый элемент где-то в начале списка - все номера в пределах данного года в нем самом и, соответственно, номера картинок сдвигаются на 1. Но иногда новых элементов появляются сразу несколько, а то и пара десятков - тогда номера сдвигаются на 1, например, для первых 100 штук, на 2 - для следующих 50, на 3 для следующих 70 и т.д.
Автоматизировать увеличение порядковых номеров в самом каталоге (таблица эксель) мне удалось, вопрос в том, получится ли автоматические переименовывать и картинки?

Добавлено: Пн апр 01, 2019 18:41
Avada
shadow_405
Если я правильно всё это понял (в чём совершенно не уверен) , то какое отношение имеет имеющийся в TC инструмент группового переименования, работающий с текущим файловым списком (а эта тема — про него!), к появлению новых элементов и как может их динамически учитывать? Не говоря про то, что автоматизация при групповом перименовании обсуждается вообще в другой теме на другом подфоруме (но это, в конце концов, перенести можно). Хуже, что непонятно само техническое задание. Нормального внятного алгоритма переименования вы так и не дали. Расскажите, наконец, ясным образом, чего и в какой зависимости вы хотите добиться.

Добавлено: Пн апр 01, 2019 22:05
shadow_405
Avada
Нет, поняли неправильно. Вопрос именно в переименовании имеющегося списка из сотен файлов формата jpg. Номер в названии первых (например) 100 элементов надо увеличить на 1, следующих (например) 70 на 2, следующих (например) 30 - на 3 и т.д. Не знаю, как сформулировать задачу конкретнее. Пример названия файлов привел выше, не выкладывать же мне названия всех файлов.

Добавлено спустя 59 минут:

Да, и как я говорил выше, номера этих файлов идут не по порядку и встречаются номера с буквой на конце.

Добавлено: Пн апр 01, 2019 23:12
Flasher
shadow_405
Короче, ни ИГП, ни какой-либо другой GUI-ренеймер с подобными выбивающимися из понятного контекста шаблонов нужниками не справится. Это поле для скриптов, как уже дали понять, в другом разделе.

Добавлено: Вт апр 02, 2019 05:44
Avada
Предыдущие сообщения перенесены из "Общих вопросов" в "Автоматизацию". Хотя и для неё потребуется конкретика. Скрипты работают без "напримеров" по чёткому алгоритму, который надо будет уточнять под реальную задачу: сколько на что увеличивать, если такое вообще удастся автоматизировать.

Добавлено: Вт апр 02, 2019 08:38
shadow_405
Хорошо, а если упростить задачу. Можно просто увеличить последнюю цифру в названии всех файлов на 1?

Добавлено: Вт апр 02, 2019 11:36
Avada
shadow_405
Знаете поговорку "простота хуже воровства"? Во-первых, это непонятно как поможет решить решить исходную проблему (а это, если верно понимаю, автоматическая перенумерация списка файлов после добавления в него новых файлов в произвольных местах). Во-вторых, о какой "последней цифре" здесь может идти речь и так ли это просто? Грубо говоря, у вас был файл с числом 129. Увеличение на единицу последнего разряда приведёт к увеличению на нёе же предыдущего разряда (должно быть 130, а не 120), то есть о переделке числа в целом. Тут речь идёт на самом деле о полной реорганизации счётчика, да ещё с добавлением букв, от которых на самом деле было бы неплохо вовсе избавиться.
Давайте вы всё-таки как следует подумаете и поясните, что там у вас происходит и чего вы на самом деле хотите.

Добавлено: Вт апр 02, 2019 15:55
Flasher
shadow_405 писал(а):Если в каталоге появляется новый элемент где-то в начале списка - все номера в пределах данного года в нем самом и, соответственно, номера картинок сдвигаются на 1.
Что значит "сдвигаются на один"? Каким образом? Без переименования?
Было: 1, 2, 3. Добавился 1а. Стало: 1, 1а, 2, 3. Что здесь надо переименовывать и зачем?
Avada писал(а):Во-вторых, о какой "последней цифре" здесь может идти речь и так ли это просто?
Очевидно, он путает цифру с числом.

Добавлено: Вт апр 02, 2019 21:42
shadow_405
Я точно знаю, что происходит и какой результат мне нужен. Прошу прощения, если формулирую проблему недостаточно конкретно. Попробую еще раз.
Есть папки, содержащие набор файлов .jpg с названиями такого вида:
1959, № 11
1959, № 13
1959, № 13а
1959, № 116
1959, № 119а
Периодически возникает потребность поменять названия всех файлов, увеличив номер каждого на 1. То есть мне нужно, чтобы назваться они стали, соответственно:
1959, № 12
1959, № 14
1959, № 14а
1959, № 117
1959, № 120а
Никакая автоматизация не нужна. Я не путаю цифру и число, но действительно забыл о ситуации, когда номер заканчивался на "9". И еще есть проблема с файлами типа "1959, № 120а". Букву убрать нельзя. В крайнем случае, я думаю, можно допустить, чтобы алгоритм такие файлы вообще игнорировал и потом переименовывать их вручную, их не так много.

Еще одна проблема в том, что этот процесс переименования периодически должен запускать человек, который не очень хорошо владеет ПК. Но и не совсем плохо, удалось обучить его создавать автоматическое содержание и даже автоматический предметный указатель в ворде, а последнее не так уж просто)

Добавлено: Вт апр 02, 2019 23:23
Flasher
shadow_405 писал(а):Периодически возникает потребность поменять названия всех файлов
Т.е. это ложный запрос?:
shadow_405 писал(а):Задача - поменять последнюю цифру, например - в первых 3 файлах увеличив её на 1, а в трех оставшихся - на 2.
Номер в названии первых (например) 100 элементов надо увеличить на 1, следующих (например) 70 на 2, следующих (например) 30 - на 3 и т.д.

Добавлено: Вт апр 02, 2019 23:50
shadow_405
Flasher
Это был бы идеальный вариант, но я могу обойтись более простым, просто запустить его несколько раз.