재우니의 블로그

 

 

 

robocopy 명령어

 

robocopy 명령어는 기본적으로 동일한 파일명이 있을 경우 파일의 크기나 수정 날짜를 비교하여 이미 복사된 파일과 동일한 경우 복사를 건너뛰고, 다를 경우 해당 파일을 덮어씁니다. 그러나, 파일을 덮어쓰지 않고 그냥 넘어가고 싶다면 옵션을 추가해야 합니다.

동일한 파일이 있을 때 덮어쓰지 않고 넘어가려면 /XN, /XO, 또는 /XC 등의 옵션을 사용할 수 있습니다.

 

 

  • /XN: 새 파일을 복사하지 않음 (원본 파일이 새 파일일 경우 복사를 건너뜀).
  • /XO: 오래된 파일을 덮어쓰지 않음 (대상 파일이 더 새로울 경우 복사를 건너뜀).
  • /XC: 변경된 파일을 복사하지 않음.

 

예시:

동일한 파일이 있을 때 덮어쓰지 않고 다음 파일로 이동하려면 다음과 같은 명령어를 사용할 수 있습니다.

 

robocopy "G:\개인자료\2024" "F:\사진\2024" /E /XO

 

이 명령어는 대상 폴더에 이미 존재하는 파일이 더 새로울 경우 그 파일을 덮어쓰지 않고 다음 파일로 넘어갑니다.

 

 

파일 또는 디렉터리 손상 경우

 

 

파일 또는 디렉터리가 손상되어 읽을 수 없을 때 발생합니다. 이 경우 robocopy는 자동으로 파일을 다시 시도하려고 하지만, 손상된 파일이 계속 문제를 일으킨다면 복사를 멈추지 않고 건너뛰도록 설정할 수 있습니다.

 

손상된 파일을 무시하고 복사를 계속하려면 /R:0 옵션과 /W:0 옵션을 사용하여 재시도 횟수를 0으로 설정하고 대기 시간을 없애 복사 실패 시 즉시 건너뛰도록 할 수 있습니다.

 

 

명령어 예시:

 

robocopy "G:\개인자료\2024" "F:\사진\2024" /E /R:0 /W:0

 

 

설명:

  • /R:0: 실패한 파일에 대해 재시도하지 않음.
  • /W:0: 재시도할 때 대기 시간을 0초로 설정 (즉시 건너뜀).

 

 

이 설정을 통해 손상된 파일을 만나면 재시도하지 않고 바로 건너뛰며 복사 작업을 계속할 수 있습니다.

 

 

이동(Move)

 

파일을 **복사(Copy)**가 아니라 **이동(Move)**할 때도 비슷한 방식으로 robocopy 명령어를 사용할 수 있습니다. 이동 작업에서도 동일하게 손상된 파일을 건너뛰고 싶다면 /R:0과 /W:0 옵션을 적용할 수 있습니다.

robocopy에서 파일을 이동하려면 /MOVE 옵션을 사용하면 됩니다. 이 옵션은 파일을 원본 위치에서 삭제하고 대상 위치로 이동시킵니다.

명령어 예시 (이동):

robocopy "G:\개인자료\2024" "F:\사진\2024" /E /MOVE /R:0 /W:0

 

설명:

  • /E: 하위 폴더를 포함해 빈 폴더도 모두 이동.
  • /MOVE: 파일을 이동 (복사 후 원본 파일을 삭제).
  • /R:0: 파일이 손상되었을 경우 재시도하지 않고 바로 건너뜀.
  • /W:0: 재시도 시 대기 시간을 0초로 설정.

 

 

이 명령어는 "G:\개인자료\2024" 폴더의 파일과 하위 폴더를 "F:\사진\2024"로 이동하면서, 손상된 파일은 건너뛰고 이동 작업을 계속 진행합니다.

 

 

 

 

참고사이트

 

https://learn.microsoft.com/ko-kr/windows-server/administration/windows-commands/robocopy

 

Robocopy

한 위치에서 다른 위치로 파일 데이터를 복사하는 robocopy 명령에 대한 참조 문서입니다.

learn.microsoft.com