Qual é a melhor maneira de mesclar dois conjuntos de arquivos, mas para duplicatas para selecionar o arquivo mais antigo no Windows?

1

Eu tropecei em um caso de uso estúpido. Eu quero mesclar duas pastas de uma maneira particular (eu acho que estas são chamadas de pastas agora, eu ainda penso nelas como diretórios, mas seja qual for). As pastas têm as seguintes características:

  • conteúdo em grande parte idêntico (mas algum conteúdo exclusivo em cada)
  • Estrutura de pastas em grande parte idêntica
  • A pasta A tem datas de modificação de arquivo mais antigas em algum conteúdo idêntico
  • A pasta B tem datas de modificação de arquivo mais recentes em algum conteúdo não idêntico

O que eu quero fazer é mesclar a pasta A e a pasta B de forma que pelo menos uma delas atenda aos seguintes critérios:

  • Tem todos os arquivos que estavam anteriormente em A e B
  • Possui toda a estrutura de pastas que estava em A ou B
  • Para arquivos idênticos, tem a versão do arquivo com a data de modificação anterior
  • Para arquivos não idênticos, a versão do arquivo com a data de modificação mais recente

Estas são pastas enormes. Eu passei as últimas 24 horas tentando hackear um script (em R, porque quando tudo que você tem é um martelo, tudo parece um prego) que faria isso usando a saída de texto do CloneSpy e obtendo datas modificadas do arquivo a partir das funções de consulta de arquivos do R ... mas essa solução é / lenta / e eu não consegui juntar nada. Admito que meu caso de uso é estranho, mas não parece que seria inteiramente único. Alguma ideia de como posso fazer isso de maneira mais simples?

    
por russellpierce 23.03.2013 / 15:06

1 resposta

0

Se forem arquivos baseados em texto e você não estiver procurando apenas por duplicatas, mas também para remover quase duplicatas, tente link É baseado em Java, por isso deve funcionar no Windows. Eu acho que pode criar um relatório de quais arquivos são duplicados e, em seguida, você pode processar o relatório e excluir arquivos antigos.

    
por 07.04.2013 / 18:48