2012-08-25 02:30:50 +0000 2012-08-25 02:30:50 +0000
32
32

Como copiar APENAS os ficheiros que não se encontram no destino?

É possível utilizar o robocopy para copiar apenas os ficheiros que não existem no destino?

robocopy tem um comutador /is (incluir os mesmos ficheiros). O que procuro é um comutador /xs. Se um ficheiro existe tanto na fonte como no destino, não quero que seja copiado. O critério é apenas o nome do ficheiro, independentemente do dia modificado, tamanho, etc. Por exemplo, mesmo que a fonte tenha um ficheiro mais recente (baseado na data modificada) do que o mesmo ficheiro no destino, não quero que ele seja copiado. Possível fazer isto? Obrigado.

Respostas (2)

38
38
38
2012-08-25 23:47:07 +0000

Basta usar as bandeiras /xc (excluir alteradas) /xn (excluir mais recentes) e /xo (excluir mais antigas):

robocopy /xc /xn /xo source destination
-1
-1
-1
2014-11-05 20:09:14 +0000

Se estiver a copiar da esquerda para a direita, pretende apenas copiar ficheiros órfãos da esquerda para a direita.

Eu utilizo uma ferramenta de pagamento chamada Beyond Compare que trata deste tipo de cenários. RoboCopy é excelente para unidades mapeadas ou mesmo caminhos UNC, mas os meus dois casos de utilização envolvem:

  • FTP para copiar novos ficheiros para o meu sítio web
  • mover/arquivar ficheiros para DropBox

Isso, infelizmente não posso fazer com o RoboCopy.