Видео ролики бесплатно онлайн

Смотреть 4k видео

Официальный сайт toppromotion 24/7/365

Смотреть видео бесплатно

chemikadze 27.08.2009 23:24

Qt Software — DublicateFinder 0.1

Недавно от друга получил вопрос: "А чем в linux можно удалить повторяющиеся файлы в каталоге/каталогах?". Ответом сначала был скрипт из двух for'ов, но это слишком топорно и не всегда удобно. Хотелось программу, которая могла бы проанализировать содержимое каталогов (в т.ч рекурсивно) и спросить, какие из них можно удалить.



Реквест был удволетворен в течении 3-х дней, что получилось - на скриншотах.











Исходный код: http://narod.ru/disk/12503127000/dublicateFinder.tar.bz2.html



ЗЫ: Русского языка пока не сделал, завтра скорее всего переведу.


Тэги: dev qt4 программирование
+ 7 -
Похожие Поделиться

xT 27.08.2009 23:33 #
+ 0 -
Choose which files to delete and which files to delete by double-clicking them.

Вероятно одно из 'delete' должно быть 'save' =)

Надеюсь есть опция - select\deselect all ?
chemikadze 27.08.2009 23:38 #
+ 0 -
Да, но только в пределах одного комплекта копий. Поправим и то, и это =)
lockie 28.08.2009 01:03 #
+ 0 -
На чём писал?
А проверяет по хэшам?
chemikadze 28.08.2009 13:55 #
+ 0 -
Писал на Qt4, в тэгах есть.

Сначала хотел проверку сделать именно по хэшам, но потом подумал что md5 коллизия - не самая лучшая вещь, особенно с важными файлами.
Но возможность выбора побайтового или хэшевого сравнения уже в фичерплане =)
nobodyzzz 28.08.2009 16:11 #
+ 0 -
md5 не единственный хэш, да и коллизии там не так часты, да и вообще для поиска дубликатов в одном каталоге вполне хватит и crc32.
chemikadze 29.08.2009 12:33 #
+ 0 -
А если рекурсивно?
Стоит сделать как сказали ниже, комбинируя md5 и sha1 для файлов с совпадающим размером.
nobodyzzz 29.08.2009 12:53 #
+ 0 -
не знаю на сколько это хорошая идея, но можно еще у файлов определенного типа(исполняемых например или медиа-файлов) сравнивать какие-нибудь поля из заголовка.
chemikadze 30.08.2009 14:20 #
+ 0 -
Не, думаю не нужно.

Только вот основной "заказчик" оказывается немного другого ждал от программы. Ему надо битлов почистить, в папках есть файлы с одинаковыми названиями. Сделать сравнение по хэшу пока не охота, реализую сравнение по именам и выложу как 0.2. Русский есть, допилен интерфейс, улучшено быстродействие поиска, окно настроек - думаю пора.
lomereiter 28.08.2009 08:19 #
+ 6 -
Молодец, но...
Во-первых, как Ъ-граммар-наци, замечу, что правильно-таки "duplicate :-) (В названии второй колонки тоже поправить надо)

Во-вторых, есть некий FSlint (GUI'ня, судя, по отзывам, хорошая штука); из консольных — liten2 на Python или fdupes на православном Си =)
chemikadze 28.08.2009 14:11 #
+ 0 -
Мда, в следующий раз проверю все по словарю =)

Кстати аналагов я думал будет больше. =) Но все-таки я предпочитаю кататься на своем велосипеде.
lomereiter 28.08.2009 16:40 #
+ 1 -
Ну я все аналоги и не искал =)
Кстати, можешь из вышеперечисленного идеи повыхватывать. Например, в FAQ FSlint приводится алгоритм:
1. exclude files with unique lengths
2. handle files that are hardlinked to each other
3. exclude files with unique md5(first_4k(file))
4. exclude files with unique md5(whole file)
5. exclude files with unique sha1(whole file) (in case of md5 collisions).


В хорошем качестве hd видео

Онлайн видео бесплатно


Смотреть русское с разговорами видео

Online video HD

Видео скачать на телефон

Русские фильмы бесплатно

Full HD video online

Смотреть видео онлайн

Смотреть HD видео бесплатно

School смотреть онлайн