Robocopy는 /D 스위치를 무시합니다.

Robocopy는 /D 스위치를 무시합니다.

robocopy를 사용하여 소스 디렉터리에서 대상 디렉터리로 파일을 이동하려고 합니다. 문제는 inetpub 메일 프로세스가 대상 디렉토리를 모니터링하고 그곳에 있는 파일을 빠르게 잠그고 삭제한다는 것입니다. 무슨 일이 일어나고 있는 것 같나요?

1) 나는 전화한다

Robocopy C:\test c:\test1 /COPY:D /MOV /IPG:50 /R:1000000 /W:30 /Z /Log:C:\robolog\RoboLog.txt

Robocopy는 /D 스위치를 무시하고 로그에 다음을 포함하는 것 같습니다.

   Source : C:\test\
     Dest : c:\test1\

    Files : *.*

  Options : *.* /COPY:DT /MOV /Z /IPG:50 /R:1000000 /W:30 

2) Robocopy가 데이터를 대상에 복사한 다음 타임스탬프를 쓴 다음 원본 디렉터리에서 파일을 삭제하는 것으로 의심됩니다. Robocopy가 타임스탬프를 쓰기 전에 inetpub가 일부 파일을 삭제하기 때문에 로그에 다음과 같은 오류가 표시됩니다.

2011/08/18 10:17:06 오류 2 (0x00000002) 타임스탬프 대상 파일 C:\test\Foo.txt

영향을 받는 파일은 복사되지만 소스 디렉터리에도 남아 있습니다.

3) 복사되었지만 삭제되지 않은 파일로 인해 Robocopy가 오류 9와 함께 실패합니다.

이 문제를 해결할 수 있는 방법이 있나요? 내 평가가 정확하다면 Robocopy가 데이터만 복사하고 타임스탬프를 기본값으로 남겨두도록 할 수 있다면 효과가 있을 것입니다.

답변1

파일을 삭제하려고 하면 파일이 잠긴 것 같은 느낌이 듭니다.
볼륨 섀도 복사본을 사용하면 파일을 삭제하지 않고 필요한 파일을 얻을 수 있습니다.
하지만 파일을 자동으로 삭제하는 것은 복잡합니다. 파일을 살펴보고 정리하려면 스크립트(현재 스크립트의 또 다른 부분)를 작성해야 합니다.

관련 정보