Обновить

Как разобрать файлы на Mac за 10–15 минут и удалить дубли фото, видео и документов + готовый скрипт

Уровень сложностиПростой
Время на прочтение15 мин
Охват и читатели8.2K
Всего голосов 5: ↑5 и ↓0+10
Комментарии4

Комментарии 4

fdupes здесь закрывает только одну часть задачи: поиск дублей. У меня цель была не просто удалить одинаковые файлы, а безопасно разобрать весь архив: сначала вынести дубли в карантин, зафиксировать план изменений, потом разложить файлы по структуре и сохранить возможность полного отката.

При этом один и тот же файл мог лежать в пяти разных папках и называться совершенно по-разному.

По идее на Маке место от этого раздуваться не должно (если делать копии через GUI, cp -r или что либо ещё поверх clonefile).

Двадцать два года назад (страшно подумать, да) я обратился с похожей задачей (нахождение дублей в выводе команды ls -lR, под дублем понимаем файлы с одинаковым названием и размером) к знакомому гуру Perl. Результат я бережно храню и использую до сих пор (таймстамп файла 2004-02-19 16:05:18 UTC)

#! /usr/bin/perl -l
$pwd = './';
while (<>) {
  chomp;
  s/:$/\// && ($pwd = $_) && next;
  ($s, $n) = (split /\s+/)[4,-1];
  push @{$fx{$n.':'.$s}}, ($pwd.$n, $s) if /^-/ && $s;
}
$SW = 0;
for (grep {@$_ > 2} values %fx) {
  %x = @$_;
  print "$_ : $x{$_}" for keys %x;
  $SW += (scalar(keys %x)-1)*$_->[1];
  print "===";
}
print "$SW bytes wasted...";

Вы сделали намного более функциональный «комбайн», и строгое совпадение по SHA-256 лучше чем имя плюс размер (хоть и затратней по ресурсам)!

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации