Страница 1 из 1

Групповое переименование и потом обратно

Добавлено: Ср авг 19, 2015 02:32
newsky
Возможно ли с помощью ТС реализовать такую задачу:
Есть папки, в них и папки и файлы, имена которых в перемешку, на кириллице и на латинице. Необходимо переименовать всё, что на кириллице (папки, файлы) в любые имена на латинице, хоть транслитеррация, хоть нумерация, без разницы. Самое главное, после обработки файлов сторонней программой необходимо всё вернуть обратно, точно так, как было. Если это возможно в рамках ТС, буду признателен за помощь, если нет, то за любой совет, в каком направлении искать релизацию. Спасибо.

Добавлено: Ср авг 19, 2015 09:40
Avada
newsky
Во-первых, про создание тем, связанных с групповым переимеенованием говорилось совсем недавно.
Во-вторых, "групповое переименование и потом обратно" в нормальной терминологии называется функцией отката и в качестве таковой описано в справке. Так что в общем виде подобные задачи вполне решаемы. При одном условии: откат должен выполняться в том же сеансе TC, что и переименование.
Но в конкретном случае есть одно "но", ибо в условиях указаны папки вперемешку с файлами. Конечно, не составляет труда через функцию поиска найти всё содержимое некой папки и вывести найденные подпапки и файлы на панель, затем выделить их и в ИГП и применить плагин wdx_translit с любым вариантом замещения кириллицы латиницей (имена в латинице останутся, естественно, неизменными). Когда в списке одни файлы или одни папки, проблем нет. Но если в эту выборку попадает папка с именем в кириллице, то она будет переименована первой, в результате чего всё её содержимое обработано уже не будет (путь изменился).
Можно, разумеется, сделать всё это в два в этапа — сначала переименовать только папки с кириллицей, а потом только файлы с кириллицей. Но легко и просто откатить в ИГП удастся только последнее переименование!
Можно, конечно, заранее создать (после копирования имён в буфер штатной командой TC) список папок с исходными именами в кириллице и использовать для обратного переименования папок его (см. в справке и на форуме про загрузку имён из файла), но там надо проследить, чтобы и по количеству, и по порядку следования прежние имена соответствовали транслитерированным.
Рекомендую предварительно потренироваться на специально созданных тестовой файловой структуре (наборе вложенных папок и файлов с именами в латинице и кириллице).
Тема пока остаётся на месте, поскольку у кого-то из участников форума могут возникнуть ценные мысли по автоматизации запрошенных действий с помощью сторонних средств.

Добавлено: Ср авг 19, 2015 11:05
Flasher
Грамотный откат без идентификации невозможен. В отношении файлов это может быть хэш. Конкретное решение здесь. У папок остаётся дата создания и размер. Но если папки создавались автоматически группой, то время создания может совпасть, а размер не подойдёт для папок-дублей или пустых.

[mod="Avada"]В целях приведения к разумному и достаточному минимуму числа открытых тем с заглавием "Групповое переименование" и с некоторыми производными от этого заглавия данная тема закрывается.[/mod]