Групповое переименование со сложным условием

Обсуждение Total Commander. Установка, использование, настройка, решение проблем, скрытые функции. Обсуждение новых версий.

Модераторы: d-view, Моторокер, Avada, CaptainFlint, Nik

Ответить
skpro
Сообщения: 3
Зарегистрирован: Вт фев 07, 2012 12:00

Групповое переименование со сложным условием

Сообщение skpro »

Добрый день!

Ситуация: словил вирус, который заблочил очень большое количество файлов на сетевом ресурсе (порядка 10000 файлов)

Что сделано: найдена "лечилка", которая разблокировала файлы, но сделала это созданием копий.

Пример: был файл Отчет по реализации.doc, а стал Отчет по реализации~decodedB.doc.err. Другими словами, маска новых имен выглядит как [ИмяФайла]~decodedB.[РасширениеФайла].err

Задача: найти файлы расшифрованные, удалить следы переименования и перезаписать поверх оригинальных битых файлов.

Засада: стандартным способом TC ругается что такие файлы в каталоге уже существуют. Для этого я искал файлики с decodedB, и делал групповое переименование с удалением ненужных символов

Help!
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Может, проще будет скопировать всю структуру каталогов (разумеется, только файлы типа *~decodedB.*.err) в другое место, там переименовать, а потом перенести всю структуру обратно с заменой?
skpro
Сообщения: 3
Зарегистрирован: Вт фев 07, 2012 12:00

Сообщение skpro »

Хороший способ. Вот только как это сделать? :oops:
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Ну как, выделяешь папки верхнего уровня, F5, внизу есть поле "Только файлы типа:", вписываешь там *~decodedB.*.err. Тотал скопирует структуру, в которой будут только файлы, удовлетворяющие маске. Затем в скопированных папках Ctrl+B, *, Ctl+M... Дело техники.
skpro
Сообщения: 3
Зарегистрирован: Вт фев 07, 2012 12:00

Сообщение skpro »

Flasher
по первому вашему способу: нашел все файлы по маске, вывел на панель, скопировал названия файлов без каталогов, загрузил в блокнот, удалил ненужные куски из имен, вернулся в ТС, вывел файлы без подкаталогов, нажал "выделение - загрузить выделение из буфера", выделил почему то только три файла (экспериментировал на 160 файликах) :(

по второму можно чуть подробнее расписать, как этим пользоваться

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

MVV

Спасибо большое. По вашему методу все получилось :P
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Привожу исправленный алгоритм здесь (предыдущий пост удалён).
1. В корневой папке выполнить команду "файлы без подкаталогов".
2. Выполнить выделение (cm_SelectFiles) по маске *~decodedB*.*.
3. Сохранить выделение в файл (cm_SaveSelectionToFile).
4. Открыть этот файл в редакторе, произвести массовое удаление ненужных кусков, сохранить.
5. Загрузить выделение из этого файла (cm_LoadSelectionFromFile).
6. Удалить все выделенные.
7. Выделить опять по маске п.2.

Про второй можно забыть. Там не действуют регулярки.
Ответить