Cristiano, Obrigado mesmo.
Vou tentar fazê-lo aqui, mais não tenho experiência nenhuma com shell.

Cristiano Ferrari escreveu:
>
> --- Em [email protected] 
> <mailto:shell-script%40yahoogrupos.com.br>, Eduardo Miranda - EFSM
> Solutions <[EMAIL PROTECTED]> escreveu
> >
> > Bom dia a todos do Grupo;
> >
> > Na empresa onde trabalho, existe aproximadamente 550 Gigas de
> informação.
> >
> > Seria muito complexo montar um script para fazer uma listagem dos
> > arquivos com repetidos?
> > Como faria essa busca?
> >
>
> Eduardo, bom dia.
>
> Para encontrar arquivos repetidos, mesmo com o nome diferente, uma boa
> opção seria usar o hash md5sum.
>
> Você poderia criar um script que calculasse o hash de todos os
> arquivos do HD (!!!) e os armazenasse em uma tabela de banco de dados,
> mysql por exemplo.
>
> Depois era só criar uma query que listasse todos os hash com mais de
> um arquivo vinculado a ele.
>
> Agora...
>
> Se isso é tecnicamente viável em razão de quanto tempo vai levar para
> executar e quanto de processamento isso vai consumir de sua máquina,
> "são outros 500", como diria minha santa avozinha...
>
> Mas nada impede que você crie um script que execute a tarefa apenas em
> parte do seu HD e à partir disso estime quanto tempo isso vai demorar,
> para analisar a viabilidade da idéia. Claro que certos diretórios
> podem ser omitidos nesta tarefa. Por exemplo, para que rodar este
> script em /bin /sbin /dev /lib /usr ou mesmo no /var e /etc?
>
> Uma vez feito o inventário inicial (e gravado no banco de dados) você
> pode criar uma segunda versão script, para rodar diaramente no cron,
> que faz o mesmo processo de cálculo e armazenagem do hash mas apenas
> para arquivos criados/alterados (ctime) naquele dia. Dá para usar o
> find para encontrar estes arquivos e já disparar o
> cálculo/armazenamento do resultado apenas para os arquivo localizados.
>
> Algo como:
>
> find ./ -ctime 0 -exec gerahash.sh {} \;
>
> Executaria o script gerahash.sh para cada arquivo modificado ou criado
> nas últimas 24 horas dentro do diretório corrente (./), passando o
> path do arquivo encontrado como parâmetro do script.
>
> Aí seria apenas você criar o script para calcular e armazenar o hash +
> path do arquivo e rodar um segundo script que executasse a query no
> banco, lhe enviando os resultados das duplicatas por e-mail, por exemplo.
>
>  

Responder a