Latest post of the previous page:
buniak_a_h,Наконец-то я разобрался в чём суть просьбы и присоединяюсь к ней.
Latest post of the previous page:
buniak_a_h,Наконец-то я разобрался в чём суть просьбы и присоединяюсь к ней.
lua:@DblFind.lua
), то обрабатывает пассивную панель; если из меню плагинов - активную. Сделано 2 арианта: первый - «в лоб» (просто перебором без оптимизации; предполагается, что перед запуском на панели нет отмеченных файлов!!!); второй - с некоторой оптимизацией (этому пофик на отмеченные файлы). Вроде как результат одинаковый, но второй в 2.5 раза быстрее. Проверка в этом деле - самое сложное.Очень даже прошу Вас опубликовать его (в крайнем случае передать через личку). Он мне весьма пригодится. Не понимаю даже как я раньше сам до такого не дотумкал.buniak_a_h wrote: ↑Wed 17 May, 2023 15:00 у меня есть скрипт, заменяющий реальные совпадающие файлы на жесткие ссылки
DblFind.lua
также и от меня. Вот теперь в этом вопросе я с Вами и вовсе полностью согласен — сортировка обнаруженных дублей по родственным группам будет чрезвычайно полезной.buniak_a_h wrote: ↑Mon 15 May, 2023 09:06 просто отметить неуникальные фалы малополезно. Надо группировать
А что, у вас прямо так много групп дублирующихся файлов одинакового размера? (Т.е. внутри группы одинаковое содержимое, а между группами одинаковый только размер.) Если немного, то можно обойтись и сортировкой по размеру.
Собственно, оптимизация в этом и заключается, что элементы сначала сортируются по размеру, а только потом равнообъёмные сравниваются. Просто я подумал, что раз это не было сделано сразу, значит есть резон сортировать как-то по-другому…
В моей практике был случай, когда новая версия ехе-шника совпадала со старой по размеру и имела ту же контрольную сумму! В результате наша система обновления версий забуксовала! В этом скрипте я не сравниваю файлы, а вычисляю CRC32 и сравниваю их, из-за чего может случиться ложное срабатывание. Может, имеет смысл использовать другую КС? Или даже сделать настройку? Дайте знать Ваше мнение, pse!
Во-первых, я не понимаю, что такое другая КС.
crc32
на md5
:local crc = Plugin.SyncCall(IntheckerGuid, "gethash", "md5", fn)
Это ― скрипт на bat, плюс своя мелкая утилитка сравнения файлов (до первого расхождения). Использовал для создания бэкапов (ежедневных и даже чаще, когда работал). Идея была такая: копировал папку с проектом в отдельный каталог, сравнивал с предыдущим, неизменные файлы удалял и заменял на линки. Вы действительно хотите такой тупой скрипт? В наше время для этого есть git…Konstantin wrote: ↑Wed 17 May, 2023 17:37 Очень даже прошу Вас опубликовать его (в крайнем случае передать через личку)
Спасибо за пояснения! Если Вы, по любой причине, не считаете целесообразным обнародовать скрипт, то и не нужно этого делать. Спасибо за совет с жёсткими линками. При малых объёмах даже и вручную могу их сделать. А про скрипт сугубо любопытно было.
Спасибо за полезную информацию. С учётом того, что в данной теме обсуждается и решается задача по возможности максимально и быстрого выявления дубликатов файлов средствами, присущими самому Фару. Прежде всего — макросами и/или плагинами. И, предпочтительно, без применения сторонних утилит.