Я ищу способ поиска определенного файла в OSX (Maverick, но в целом OSX). В частности, я хотел бы сделать следующее:
учитывая File_001, я хотел бы искать, если в файловой системе существует копия этого файла.
Не только с тем же именем, я хотел бы, чтобы метод сравнения был алгоритм хеширования, как MD5, SHA и т. Д.
Большая часть "поиска дубликатов файлов", которую я пытался найти, просто ищет все дубликаты на диске / системе. Вместо этого мне было бы интересно отправить один файл и найти его дубликаты.
Кто-нибудь знает, существует ли такая программа? Может быть, какая-то неясная функция Spotlight?
Ответы:
Вы также можете использовать
fdupes
. У него нет возможности искать дубликаты определенного файла, но вы можете просто получить вывод для имени файла:-r
возвращается в каталоги и-1
печатает каждую группу дубликатов файлов в одну строку.Другие полезные примеры:
fdupes -r .
находит все дубликаты файлов в текущем каталоге;fdupes -r . -dN
удаляет все кроме первого дубликата из каждой группы дубликатов;fdupes -r dir1 dir2|grep dir1/|xargs rm
удаляет дубликаты вdir1
.Вы можете установить
fdupes
сbrew install fdupes
.источник
Вы можете легко создать это самостоятельно с помощью некоторых команд оболочки:
find ~ -type f -exec md5 -r '{}' \; > /tmp/md5.list
создаст список хэшей md5 для всех ваших файлов.
grep $(md5 -q FILE-TO-SEARCH) /tmp/md5.list
будет искать md5 хэш FILE-TO-SEARCH
Выполнение первой команды (особенно если вы запускаете ее по всему диску) займет много времени.
Если вы хотите найти только один файл, вы также можете использовать
источник
Это должно работать, если в команду подставить размер и хеш для FILE_001.
198452 байта - это размер файла, который я использовал, и хэш файла md5 - 3915dc84b4f464d0d550113287c8273b
Выводом будет список файлов с путевыми именами относительно каталога, отправленного команде find.
Преимущество этого подхода состоит в том, что он будет хэшировать только те файлы, которые соответствуют размеру вашего оригинала, и будет выводить только те имена файлов, которые соответствуют хешу.
источник
Если вы не хотите связываться со сценариями, вы можете приблизиться к желаемому поведению с помощью Araxis Find Duplicate Files $ 10 в Mac App Store . На их веб-сайте также есть 7-дневная демоверсия. Find Duplicate Files ищет дубликаты, вычисляя хеш для каждого файла.
Вы можете приблизить желаемое поведение, настроив папку с единственным файлом, который вас интересует, а затем добавьте папки, в которых вы хотите искать. Это также сообщит о других дубликатах, если таковые имеются, в путях поиска.
Это приложение имеет много хороших функций сортировки, что делает результаты очень легко понять.
источник