Fdupes

Fdupes (apt) — поистине чудесное средство. Буквально за час работы с ним удалось «найти» порядка 5GB ненужных файлов, которые бы в обычно режиме периодического перетряхивания архива я бы никогда не нашел.

Процесс простой:

  1. fdupes -rm ./ — первоначальный рекурсивный поиск и вывод саммари: сколько файлов, сколько групп и сколько места можно освободить.
  2. fdupes -rS ./ — вывод всех групп файлов с указанием объема — можно увидеть, какие файлы и в каких папках сочтены дубликатами и имеет ли смысл их удалять.
  3. fdupes -rdN ./ — удалить все найденные дубликаты, оставив только первый файл в каждой группе.

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

Но возникает несколько вопросов:

  • Нельзя задать правило исключения файлов. Например есть куча мала панорам в процессе сборки (правда процесс оборвался лет эдак пять назад) и удалять их нежелательно, так что хотелось бы их исключить по regexp на путь файла, но нет. Приходиться временно перемещать «нежелательные» папки.
  • Метод сортировки файлов внутри групп неясен и не контролируем, так что может возникнуть ситуация, что придется объединять две пересекающиеся папки вручную.