Эта статья в значительной степени или полностью основана на одном источнике . ( май 2024 г. ) |
freedup — это программа для сканирования каталогов или списков файлов на наличие дубликатов файлов . Списки файлов могут быть предоставлены в канал ввода или сгенерированы внутренне с помощью find с предоставленными параметрами. Есть больше параметров для более подробного указания условий поиска. Другие параметры влияют на выполняемые действия, например, отображать только или указывать тип ссылки при каких обстоятельствах. freedup сначала сравнивает размеры файлов, затем при равных размерах проверяет сигнатуры MD5 , и перед выполнением действий выполняется побайтовая проверка для проверки. Интерактивный режим позволяет индивидуально решать, какие файлы связать мягко или жестко или удалить.
Сравнение путем игнорирования тегов метаданных и комментариев является уникальной функцией freedup . Размер файла, начало и конец уникального контента сохраняются для последующей обработки. Сравнивая звуковые файлы, вы можете игнорировать теги, например, помечен ли один файл тегом ID3v1, а другой звуковой файл с идентичной музыкой помечен тегом ID3v2 . Это также работает, если вы скопировали и перепометили копию, чтобы она вписалась в другой альбом. Это работает также для файлов JPEG ( Exif ) и фильмов mp4 . Поддерживается автоматический режим, чтобы freedup игнорировал все распознанные теги. Автор расширит эту функцию по требованию, если будет достаточно документации о том, как удалить теги.
freedup написан на языке C, соответствующем POSIX , и выпущен под лицензией GNU General Public License . Его сложность составляет O(n log n) для полного сравнения файлов. Это делается для файлов одинаковой длины после сортировки по размеру с помощью qsort (). [1]