Estou procurando uma maneira de procurar um arquivo determinado no OSX (Maverick, mas mais geralmente OSX). Em particular, gostaria de fazer o seguinte:
dado um File_001, gostaria de pesquisar se no sistema de arquivos existe uma cópia desse arquivo.
Não apenas com o mesmo nome, eu gostaria que o método de comparação fosse um algoritmo de hash como MD5, SHA etc.
A maioria dos "localizadores de arquivos duplicados" Tentei apenas procurar todas as duplicatas em uma unidade / sistema. Em vez disso, eu estaria interessado em enviar um arquivo e procurar suas duplicatas.
Alguém sabe se esse programa existe? Talvez alguma função obscura do Spotlight?
Respostas:
Você também pode usar
fdupes
. Ele não tem uma opção para procurar duplicatas de um arquivo específico, mas você pode apenas dar um grep na saída do nome do arquivo:-r
recursiva em diretórios e-1
imprime cada grupo de arquivos duplicados em uma única linha.Outros exemplos úteis:
fdupes -r .
localiza todos os arquivos duplicados no diretório atual;fdupes -r . -dN
exclui tudo, exceto a primeira duplicata de cada grupo de duplicatas;fdupes -r dir1 dir2|grep dir1/|xargs rm
remove duplicatas emdir1
.Você pode instalar
fdupes
combrew install fdupes
.fonte
Você pode criar isso facilmente com alguns comandos do shell:
find ~ -type f -exec md5 -r '{}' \; > /tmp/md5.list
criará uma lista de hashes MD5 sobre todos os seus arquivos.
grep $(md5 -q FILE-TO-SEARCH) /tmp/md5.list
procurará o hash md5 do FILE-TO-PESQUISA
A execução do primeiro comando (especialmente se você executá-lo em todo o disco), ainda leva muito tempo.
Se você deseja procurar apenas um arquivo, também pode usar
fonte
Isso deve funcionar se você substituir o tamanho e o hash por FILE_001 no comando.
198452 bytes é o tamanho do arquivo que eu usei e o hash do arquivo md5 é 3915dc84b4f464d0d550113287c8273b
A saída será uma lista de arquivos com nomes de caminho relativos ao diretório enviado ao comando find.
Essa abordagem tem a vantagem de apenas arquivos de hash que correspondem ao tamanho do original e gerar apenas nomes de arquivos que correspondam ao hash.
fonte
Se você não quiser mexer com scripts, pode se aproximar do comportamento desejado com o Araxis Find Duplicate Files $ 10 na Mac App Store . Há também uma demonstração de 7 dias em seu site. O Find Find Duplicate Files procura duplicações calculando o hash de cada arquivo.
Você pode aproximar o comportamento que deseja, configurando uma pasta com o único arquivo com o qual está preocupado e adicionar as pastas nas quais deseja pesquisar. Isso também relatará outros truques, se houver algum, nos caminhos de pesquisa.
Este aplicativo tem muitos recursos de classificação agradáveis, tornando os resultados muito fáceis de entender.
fonte