Поиск дубликатов файлов по размеру и их переименование

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

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

Ответить
kzbmshyql
Сообщения: 4
Зарегистрирован: Чт июн 01, 2023 11:00

Поиск дубликатов файлов по размеру и их переименование

Сообщение kzbmshyql »

Привет. Ребята очень нужно решить одну проблему. По этому заранее всем буду очень благодарен. Взаимно помогу если у кого будет необходимость по дизайну или видео.

Установил случайно не на тот диск ОС, и все файлы улетели.
Одной прогой "А" по восстановлению восстановил файлы с именами и структорой папок, но файлы битые.
Другой прогой "Б" восстановил файлы и они рабочие, но без имен и структуры папок.
Но мне не все файлы нужны, а только из некоторых папок.

1.В папке от проги "А" все файлы нужные, и на основе их размера файлов нужно найти такие же самые в папке из проги "Б".
2.После этого надо как-то сохранить эти найденные файлы из проги "Б", то есть чтоб лишних файлов не было.
3.По идее теперь должны быть файлы одинаковые по размеру и количеству. И нужно имена файлов из проги "А" переписать в файлы из проги "Б".

Понимаю что может не совсем четко обьяснил. Но, если что я уточню, чтобы было понятнее, или скину скриншот если нужно. Спасибо!
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

kzbmshyql
Обсуждать тут, естественно, имеет смысл то, что соответствует функциональности Total Commander. Да, здесь существует инструментарий поиска дубликатов. Но, во-первых, уверены ли вы, что что размер битых и небитых файлов совпадает? Во-вторых, даже если это так, то поскольку файлы битые, на идентичность содержания ориентироваться нельзя, имена заведомо не совпадают, а один лишь размер для определения дубликатов ненадёжный критерий, и результаты будут примерными.
Даже самая богатая фантазия
Не представит себе наши безобразия.
kzbmshyql
Сообщения: 4
Зарегистрирован: Чт июн 01, 2023 11:00

Сообщение kzbmshyql »

Конечно я понимаю что не все файлы могут совпадать. Но, вчера пробовал искать вручную часть точно совпадало, так как суммы почти всегда сходились. Остается понять как на конкретных примерах это можно реализовать, потому что в функционале скриптов и в плагинах я не разбираюсь, по этому и интересуюсь как лучше?
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

kzbmshyql
Ссылку на описание этой функции и поиска вообще я вам дал, читайте и пробуйте. Без всяких скриптов и плагинов. Обязательное исходное условие: в область поиска должны попасть папки со всеми восстановленными файлами. И, разумеется, программа не имеет ни малейшего понятия, какие файлы из восстановленных вам нужны, а какие нет.
Даже самая богатая фантазия
Не представит себе наши безобразия.
kzbmshyql
Сообщения: 4
Зарегистрирован: Чт июн 01, 2023 11:00

Сообщение kzbmshyql »

А можете прислать скрин, как примерно это сделать? Потому что там много разной информации, и без визуально части довольно сложно сориентироваться
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

kzbmshyql
Я не даю на форумах скринов. И без хотя бы элементарных знаний функционала TC ваша затея просто безнадёжна, а на пальцах такие вещи не пересказывают. Тем более, что тут очень сложная многоходовка с неочевидным результатом, и не факт, что использование TC вообще оптимальный способ. Не хочу внушать вам иллюзии: проблемы будут наверняка в любом случае, можете быть уверены. Применительно к TC основной вопрос вовсе не в том, чтобы найти дубликаты с разными именами и одинаковыми размерами (это-то сделать несложно), а в том, что с этими результатами делать дальше. Кстати, в TC поддерживается и поиск по суммам, но для этого уже нужны WDX-плагины типа LotsOfHashes и опять же всё упрётся в обработку результатов.
Да, ТС позволяет при сохранности файловой структуры заменить всю неправильную совокупность имён в определённой папке правильной совокупностью имён из другой папки (это команда LOADLIST) при том же числе файлов и той же сортировке. Но у вас НЕТ с двух сторон сохранной структуры!
Пока я вижу только, мягко говоря, не слишком изящное и достаточно утомительное решение: результаты поиска этих дубликатов сохранить через буфер в текстовый файл, а дальше тупо и поштучно анализировать каждую нужную вам пару (они будут отделены от других пар специальными разделителями), копируя из списка правильные имена и последовательно переименовывая произвольно обозванные файлы, чтобы затем вернуть их на место в сохранившейся структуре с перезаписью битых. Как и чем всё это за вас сделать автоматически при нынешнем раскладе, абсолютно не представляю. Может быть, кто-то придумает что-то получше.
Последний раз редактировалось Avada Сб июн 03, 2023 04:20, всего редактировалось 1 раз.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Аватара пользователя
Monarch-LFV
Сообщения: 363
Зарегистрирован: Пн июл 22, 2019 13:20

Сообщение Monarch-LFV »

kzbmshyql
На ваш страх и риск примерно так:
1. Поиск дубликатов и вывод результатов в панели
2. Выделить все и далее "Инструменты" - "Копировать полные имена файлов"
3. В Akelpad (или другом продвинутом редакторе) вставить (тут лучше сразу ТС 11 Beta 5 использовать, с 11 версии группы дубликатов разделяются пустой строкой)
4. Произвести замену (рассказываю для Akelpada):
замена: ^([^\n]+)\n[^\n]+\\([^\n]+)\n\n на: \n ren "\1" "\2" (вкл. регулярные выражения)
5. Сохранить получившийся файл в CP866 с расширением *.bat
6. Запустить получившийся файл bat

!!! Сперва нужно потренироваться на кошках)) Слишком рисковано.
Отследить чтобы в группе не было более 2 файлов и т.п. Результат никак не гарантирован, как выше говорил Avada.
kzbmshyql
Сообщения: 4
Зарегистрирован: Чт июн 01, 2023 11:00

Сообщение kzbmshyql »

Спасибо за интересны вариант. Хотел еще уточнить кое-что. В "Синхронизации каталогов" очень удобно сделано то, что можно отследить одинаковые файлы. Но, как я понял при сравнении двух каталогов должны быть одинаковые имена. У меня в двух каталогах имена разные, но примерно одинаковый размер файлов (все же после форматирования не все файлы восстановился с точностью до байта, иногда погрешность в переделах 10 байтов).

В "Поиске файлов" есть возможность в "Поиск дубликатов" + "Выбор поля плагина"-"Размер" добавить фильтр по Байтам или Килобайтам, и это как раз решает частично эту задачу.

Можно в "Синхронизации каталогов" каким-то скриптом/плагином добавить похожий фильтр по размеру или длительности?
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

kzbmshyql
В "Синхронизации каталогов" файлы сравниваются при сходной файловой структуре, покаталожно, но это ещё можно было бы обойти (есть режим показа файлов без подкаталогов). Гораздо хуже, что у вас имена не совпадают, а в этом окне нет способа проигнорировать имена и сравнить по чему-то другому (у вас просто пары файлов не выстроятся). Поэтому я полагаю, что в данном инструменте при вашем раскладе ничего вы нормально сравнить не сможете. Забудьте. Что можно, уже говорилось выше.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Ответить