Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » FAR Manager (часть 7)

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140

Открыть новую тему     Написать ответ в эту тему

Maz



Дед Мазай
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Предыдущие топики:  1 [?] 2 [?] 3 [?] 4 [?] 5 [?] 6 [?]


Где взять последнюю версию?
На странице загрузки скачайте MSI-инсталлятор стабильной сборки нужной вам разрядности (32 или 64 бита) или дистрибутив в виде 7z-архива и установите/распакуйте в любую папку (FAR портабелен и может работать без установки).
Там же на свой страх и риск можно взять наиболее свежую "ночную" сборку (в таких сборках устраняются выявленные недоработки, добавляются новые функции, но могут содержаться и серьёзные ошибки).
Архив всех предыдущих ночных сборок FAR
Last release на github - собирается практически сразу (в течение получаса) после каждого коммита.
 
Общие сведения о совместимости FAR и плагинов [?]
 
Можно воспользоваться одной из пользовательских сборок FAR Manager [?]
Вопросы, касающиеся сборок, следует задавать непосредственно их авторам, а не на официальном форуме.
 
Где взять дополнительные плагины, скрипты и макросы?
Плагринг. В настоящее время большинство авторов (возможно, уже и все) выкладывают плагины здесь. Кроме плагинов здесь появляется всё относящиеся к FAR: дополнения, консольные шрифты, скрипты и пр.
Анонсы плагинов на официальном форуме. Даже если автор не выкладывает по каким-либо причинам плагин на плагринге, он может дать анонс в этой теме.
Полезные скрипты и макросы.
Шрифт TTF, аналог Terminal 10x18 [?]
 
Инструкции по сборке FAR из исходников
Набор для самостоятельной сборки FAR [?]
Как собрать FAR самостоятельно (старая инструкция) [?]  
 
Ссылки на устаревшие версии [?]
 
Прочее
Портабелизация в FAR 3 плагинов для FAR 1
Выдержка из Far Manager Site and Forum ‹ FAQ :
Отличия FAR 3 от FAR 2 [?]
Отличия FAR 2 от FAR 1.7 [?]
 
Примечания
 
* 13 декабря 2008 г. были переименованы ветки: ANSI-ветка 1.71 превратилась в 1.75, а юникодная ветка получила номер версии 2.0 (вместо 1.80). Т.е. версии 1.хх это ANSI ("старый" FAR), а версии 2.хх – юникодные ("новый" FAR). Эти ветки сильно различаются по способу взаимодействия с плагинами и системой!
* При обновлении ANSI-ветки 1.хх более старые версии плагинов могут работать в более новом FAR, но более новые плагины в большинстве случаев требуют обновления FAR (см. документацию).
* Юникодные плагины в ANSI-версии FAR не работают – у них иной способ взаимодействия (API) с Far.exe, поэтому даже не пытайтесь их использовать в FAR версии ниже 1.80.
* При обновлении юникодной версии FAR 1.80/2.0/3.0 обращайте внимание на номер сборки: следует обязательно обновить все плагины для сборок 677/680/684, иначе они не будут работать. ANSI-плагины (кроме тех, которые работают в редакторе) можно применять в юникодной версии FAR, в меню плагинов (вызываемом клавишей F11) они будут помечены значком [A] справа от их имени. Юникодные плагины в FAR 1.80/2.x/3.х никаким значком после имени не помечаются.
* Юникодная версия FAR 1.80/2.x/3.х требует как минимум Windows 2000, т.е. она работает только в Windows 2000/XP/2003/Vista/2008/7/8/10.
* Плагины от FAR 2 несовместимы с FAR 3 и не запустятся.
* В FAR 3 выборочно могут работать плагины от FAR 1, однако не стоит брать от FAR 1 плагины для редактора или работающие с дисками: первые портят текст в Юникоде, вторые – файловую систему.
* В любом случае разрядность плагинов должна совпадать с разрядностью FAR, иначе плагин не будет загружен.

 
Принципиальные различия между hard link, symlink и junction [?]
Как запустить Lua/MoonScript из FAR [?]
Как правильно добавить в программу нужную DLL (или иную зависимость), чтобы при обновлении ОС или иных программ она не перестала работать [?]
Как распаковать UUE/XXE-файлы патчей и использовать их? [?]
 
ВНИМАНИЕ!
 
Правильное завершение Far: всегда завершайте сеанс работы с Far клавишей F10! Подробнее – на форуме - Различие выхода из Far по F10 и крестиком

Всего записей: 39463 | Зарегистр. 26-02-2002 | Отправлено: 12:51 26-09-2022 | Исправлено: DimmY, 12:43 10-03-2025
Prutkovsky

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexyz21
 
Всё элементарно просто. На определённый носитель несколько человек копируют результаты работы. Корень носителя разветвлён множеством папок и подпапок. И нужно определить в этой массе дубликаты файлов.
 
Чаще всего файлы банально повторяются. Гораздо сложнее, когда имена меняют, а содержание оставляют тем же или почти тем же. Но последнюю задачу, как я понимаю, Ваш скрипт уже не решает?
 
Насчёт моих друзей — Вы их совсем не знаете. Но они часто посещают форумы Фара. И меня соблазнили. Но я решил это делать в более активном режиме.

Всего записей: 13 | Зарегистр. 13-05-2023 | Отправлено: 11:05 14-05-2023
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
скрипт уже не решает

Верно. Полное совпадение решают утилиты поиска дубликатов на основе совпадения хэш сумм по содержимому. С частичным сложнее - сходу приходит в голову лишь брать начало файлов, например первые (настраиваемый параметр) 4-16КБ, считать по ним хэш и сравнивать с выводом совпавших.

Всего записей: 3762 | Зарегистр. 16-06-2007 | Отправлено: 11:32 14-05-2023
Prutkovsky

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexyz21
 
Так может попробуете сделать?
 
Интересно ведь что получится.  
 
И ещё: из меню "Критерий сортировки" скрипт не запускается, а только из панельного макроса. Да и не нужно это, по-моему. По мне, так не плохо бы было бы упростить скрипт.

Всего записей: 13 | Зарегистр. 13-05-2023 | Отправлено: 12:42 14-05-2023
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Нет, спасибо, не интересно. Скрипт "как есть".

Всего записей: 3762 | Зарегистр. 16-06-2007 | Отправлено: 13:04 14-05-2023
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexyz21
 
Нет. Частичное совпадение фрагментов часто даст ошибку. Например для текста если различаются записанные в начале только названия, фирменные пакеты часто применяют сходный текст строки записи для БД индекса, а адресуемые им данные хранятся на удалённом сервере. Распишитесь и получите - БД индекса копируется  куда угодно ибо "защита отсутствует", но копия бесполезна.

----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 35207 | Зарегистр. 31-07-2002 | Отправлено: 13:12 14-05-2023
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Victor_VG
Как я понимаю, скрипт используется для сравнения текстовых файлов, документов ворд. Конечно, если изменили титульное название, или 1-ое предложение, оставив весь остальной текст нетронутым, то результат сравнения будет совпадение 0%, хотя это не так. Алгоритм нужно усложнять. Но заниматься этим некому.

Всего записей: 3762 | Зарегистр. 16-06-2007 | Отправлено: 13:20 14-05-2023
shmuz

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Prutkovsky

Цитата:
Гораздо сложнее, когда имена меняют, а содержание оставляют тем же или почти тем же.  

 
Есть скрипт, который справляется с разными именами и одинаковым содержанием.
(Я им ни разу не пользовался, т.к. у меня есть свой).

Всего записей: 1934 | Зарегистр. 09-03-2012 | Отправлено: 13:49 14-05-2023 | Исправлено: shmuz, 13:50 14-05-2023
Prutkovsky

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
shmuz
 
Спасибо за информацию. Скрипт весьма полезный и у меня он уже установлен (автор того скрипта очень многоопытный и его работы всегда на примете).  
 
Однако в данном конкретном случае это мне не подходит. Этот скрипт наверняка можно применять когда заведомо знаешь или обоснованно подозреваешь, что на той и на другой папках могут быть дубликаты. Но это весьма редкий случай.
 
У buniak_a_h также есть скрипт, который ищет дубликаты одного конкретного файла. И в определённых случаях он вполне может быть полезным. Но так искать когда не знаешь заранее какие именно файлы в сложном дереве папок задублированы, фактически не реально.  
 
Скрипт, созданный Alexyz21-ом, гораздо удобнее — делаю поиск по всем файлам дерева и по его результатам, во временной панели применяю Panel.SelectDuplicatesFileNames, который быстро выделяет дубликаты.  
 
А Ваш скрипт как работает с дубликатами?

Всего записей: 13 | Зарегистр. 13-05-2023 | Отправлено: 14:36 14-05-2023
shmuz

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Prutkovsky
Мой скрипт работает с двумя панелями, как и скрипт авторства buniak_a_h (мой скрипт был написан хронологически раньше).

Всего записей: 1934 | Зарегистр. 09-03-2012 | Отправлено: 14:51 14-05-2023
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Prutkovsky
 
Этот скрипт вызывает Integrity Checker который считает SHA512 - один из немногих хэш алгоритмов для которых не известны случаи "коллизии алгоритма" - ситуации когда два разных бинарных набора дают одинаковый хэш. Для алгоритмов семейств MD4, MD5, SHA1, CRC условия возникновения коллизии известны, а её вероятность в ряде случае может достигать 0,5 что делает их не применимыми.
 
Честного говоря, до момента когда я увидел код скрипта у меня была сходная мысль - вызвать Far.RecursiveSearch(), в калбаке вычислить SHA256, а после сравнить сформированные списки на равенство. Но, раз задача решена воспользуюсь этим решением - зачем дважды время тратить?
 
Добавлено:
Посмотрел скрипт - не то, надо свой писать...

----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 35207 | Зарегистр. 31-07-2002 | Отправлено: 16:04 14-05-2023 | Исправлено: Victor_VG, 18:16 14-05-2023
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Prutkovsky
 
Ладно, есть идея, повожусь и добавлю в IntChecker.Run.lua - раз назрела задача, надо решать, а этот скрипт я писал, мне и делать.

----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 35207 | Зарегистр. 31-07-2002 | Отправлено: 18:51 14-05-2023
Prutkovsky

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexyz21
 
Спасибо.  
Скачал я и испробовал v1.3.2.6 — дубликаты имён находит и очень быстро.
 
Есть и маленький вопрос. В заголовке файла указаны настройки:
 
[ ] Treat digits as numbers
[ ] Case sensitive
 
но в выводимом скриптом диалоге таких нету. Будут ещё изменения?

Всего записей: 13 | Зарегистр. 13-05-2023 | Отправлено: 21:44 14-05-2023 | Исправлено: Prutkovsky, 21:45 14-05-2023
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Prutkovsky
Это в системных настройках фара - F9 - System Settings
 

Цитата:
Будут ещё изменения?

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

Всего записей: 3762 | Зарегистр. 16-06-2007 | Отправлено: 22:00 14-05-2023
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Prutkovsky
 
Кажется, в ходе решения задачи "Поиск дубликатов с рекурсией" и задача "Поиск одноимённых" решается как промежуточный результат. По крайней мере по моим прикидкам так выходит...

----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 35207 | Зарегистр. 31-07-2002 | Отправлено: 22:46 14-05-2023
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Обновил. При [ ] Number of symbols имена могут быть любыми, сравниваются другие отмеченные критерии - размер, хэш, атрибуты.
 
Пример рапорта:
Подробнее... [?]

Всего записей: 3762 | Зарегистр. 16-06-2007 | Отправлено: 22:53 14-05-2023 | Исправлено: Alexyz21, 22:58 14-05-2023
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Prutkovsky
 
Я и забыл - SelectingEx.lua  - макрос "Пометка одинаковых файлов на обоих панелях. © SimSU" из его пакета. Сто лет установлен, так что уже автоматом жму "/" или "Shift-/" для выделения части совпадения имён.

----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 35207 | Зарегистр. 31-07-2002 | Отправлено: 22:59 14-05-2023
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Глядя на сортирвоки итемов в панели, возник вопрос к разработчикам:
 

Код:
struct PluginPanelItem
{
  FILETIME CreationTime;
  FILETIME LastAccessTime;
  FILETIME LastWriteTime;
  FILETIME ChangeTime;
  unsigned __int64 FileSize;
  unsigned __int64 AllocationSize;
  const wchar_t *FileName;
  const wchar_t *AlternateFileName;
  const wchar_t *Description;
  const wchar_t *Owner;
  const wchar_t * const *CustomColumnData;
  size_t CustomColumnNumber;
  PLUGINPANELITEMFLAGS Flags;
  struct
  {
    void *Data;
    FARPANELITEMFREECALLBACK FreeData;
  } UserData;
  uintptr_t FileAttributes;
  uintptr_t NumberOfLinks;
  uintptr_t CRC32;
  intptr_t Reserved[2];
};

 
Возможно ли добавить поле SHA256 и возможность присваивать ему значение из скрипта? Например смотрим поле SHA256 для файла пусто, присваиваем ему значение вычисленное Integrity Checker. Возможно Ariman реализует заполнение для всех итемов панели и добавит соответствующую команду.

Всего записей: 3762 | Зарегистр. 16-06-2007 | Отправлено: 08:20 15-05-2023
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexyz21
 
Счёт и заполнение можно реализовать макросом, только реализация SHA256 в RHash не самый быстрый алгоритм из доступных для которых не известна коллизия алгоритма. Вот тесты на Xeon E5 2697v2 (12 ядер / 24 потока @ 2,7 GHz) на двух машинах:
 
1) Xeon E5 2697v2 / C602J / 64 Gb REG ECC DDR3-1866M (Quad Chanel)
 
Total data size: 1,00 Г
 
CRC32 : 1009 ms, 1015 Мb/s
MD5 : 3164 ms, 324 Мb/s
SHA1 : 5538 ms, 185 Мb/s
SHA-256 : 8229 ms, 124 Мb/s
SHA-512 : 5183 ms, 198 Мb/s
SHA3-512 : 20395 ms, 50,2 Мb/s
Whirlpool : 10667 ms, 96,0 Мb/s
 
2) Xeon E5 2697v2 / C602 / 64 Gb REG ECC DDR3-1866M (Quad Chanel)
 
Total data size: 1,00 Г
 
CRC32 : 920 ms, 1,09 Гb/s
MD5 : 3120 ms, 328 Мb/s
SHA1 : 5508 ms, 186 Мb/s
SHA-256 : 8265 ms, 124 Мb/s
SHA-512 : 5027 ms, 204 Мb/s
SHA3-512 : 20384 ms, 50,2 Мb/s
Whirlpool : 10567 ms, 96,9 Мb/s
 
как видим SHA512 считается за меньшее время и так же не имеет коллизии алгоритма.

----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 35207 | Зарегистр. 31-07-2002 | Отправлено: 08:50 15-05-2023
Pasha_ZZZ



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
На рам-диске файл 16 гиг, IntChecker считает SHA-512 за 1 минуту 14 секунд, т.е. 74 секунды.
Примерно 220 МБ/с.
 
Тут же b3sum (BLAKE3) считает 256-битный хэш за 3,81 секунды.
Т.е. уже 4275 МБ/с. Правда в 40 потоков, но разница ощутимая.

Всего записей: 13199 | Зарегистр. 11-03-2002 | Отправлено: 09:25 15-05-2023
Alexyz21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
если 1-й элемент должен оказаться после прямой сортировки выше 2-го, нужно возвратить отрицательное число, если ниже - положительное, а если элементы по критерию сортировки равны - ноль

Прямая - это от меньшего к большему, обозначаемая маленькой буквой?

Всего записей: 3762 | Зарегистр. 16-06-2007 | Отправлено: 10:41 15-05-2023 | Исправлено: Alexyz21, 11:29 15-05-2023
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140

Компьютерный форум Ru.Board » Компьютеры » Программы » FAR Manager (часть 7)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru