Por que meu Robocopy sempre copia um arquivo, mas não o outro?

Por que meu Robocopy sempre copia um arquivo, mas não o outro?

Tentando aprender o Robocopy para um plano de backup básico, e tentei isso em um arquivo bat:

@echo off
echo "Hello World!"
robocopy C:\Testfolder Z:\Testfolder
pause

onde Z: é uma unidade de rede (uma unidade externa USB conectada à porta USB do roteador)

Existem apenas dois arquivos em C:\Testfolder - 02.jpg e 02-03.jpg.

A primeira vez que executei isso, ele criou Testfolder em Z: e copiou as duas imagens.

Curioso para saber o que aconteceria, executei novamente - desta vez, as mensagens na tela dizem que copiou 02.jpg, mas pulou 02-03.jpg. A mesma coisa com executá-lo novamente.

Por que isso aconteceria?

Responder1

Por padrão, o robocopy copia apenas os arquivos que acredita terem sido alterados desde a última vez que você o executou. Você pode confirmar isso vendo o status no final da cópia. Deveria dizer Arquivos ignorados é 1. Talvez seja necessário incluir a /vopção para obter melhores detalhes.

Como você está copiando para uma unidade baseada em rede conectada ao seu roteador, há uma boa chance de que haja um bug no horário do arquivo e isso esteja fazendo com que o robocopy veja uma data e hora diferentes em um dos arquivos de destino. Problemas de atributos de arquivo são comuns em compartilhamentos de samba baseados em Linux, como o que provavelmente é usado pelo seu roteador. Isso explicaria por que ele continua copiando novamente um arquivo se ele não foi alterado. Você pode tentar o /timfixparâmetro para ver se ele corrigirá a hora nos arquivos e interromperá a cópia novamente dos arquivos inalterados.

Se você deseja que o robocopy copie arquivos iguais e inalterados, adicione a /isopção.

Mais informações aqui:https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/robocopy

informação relacionada