기본 백업 계획을 위해 Robocopy를 배우려고 하며 이를 bat 파일로 시도했습니다.
@echo off
echo "Hello World!"
robocopy C:\Testfolder Z:\Testfolder
pause
여기서 Z:는 네트워크 드라이브(라우터의 USB 포트에 연결된 USB 외부 드라이브)입니다.
C:\Testfolder에는 02.jpg와 02-03.jpg의 두 파일만 있습니다.
처음 실행했을 때 Z:에 Testfolder가 생성되고 두 이미지가 모두 복사되었습니다.
무슨 일이 일어날지 궁금해서 다시 실행했습니다. 이번에는 화면 메시지에 02.jpg를 복사했지만 02-03.jpg를 건너뛰었다고 나와 있습니다. 다시 실행해도 마찬가지입니다.
왜 그럴까요?
답변1
기본적으로 robocopy는 마지막 실행 이후 변경된 것으로 생각되는 파일만 복사합니다. 복사 끝부분의 상태를 보면 이를 확인할 수 있습니다. 건너뛴 파일은 1이라고 표시되어야 합니다. /v
더 자세한 정보를 얻으려면 옵션을 포함해야 할 수도 있습니다 .
라우터에 연결된 네트워크 기반 드라이브에 복사하고 있기 때문에 파일 시간 버그가 있을 가능성이 높으며 이로 인해 robocopy가 대상 파일 중 하나에서 다른 날짜와 시간을 보게 됩니다. 파일 속성 문제는 라우터에서 가장 많이 사용되는 것과 같은 Linux 기반 삼바 공유에서 흔히 발생합니다. 이는 변경되지 않은 파일 하나를 계속 다시 복사하는 이유를 설명합니다. /timfix
매개변수를 사용하여 파일의 시간을 수정하고 변경되지 않은 파일의 다시 복사를 중지하는지 확인할 수 있습니다 .
robocopy가 동일하고 변경되지 않은 파일을 복사하도록 하려면 옵션을 추가하세요 /is
.
자세한 내용은 여기를 참조하세요:https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/robocopy