이론적으로 /DCOPY:T
는 모든 문제를 해결해야합니다.
그러나 나는 이것이 일어나는 것을 보았고 그것을 "버그"라고 확신하지는 않지만 오히려 일련의 작업 (OK, 버그)의 결과라고 확신합니다.
이 명령은 모든 파일을 복사하는 작업을해야 C:\Brushes
하는 D:\NEWBrushes
, 그리고 /DCOPY:T
소스 폴더의 타임 스탬프가 대상 폴더에 복사되도록해야한다 :
robocopy "C:\Brushes" "D:\NEWBrushes" /COPY:DAT /DCOPY:T
내가 본 (적어도 일부 버전의 Robocopy에서)은 명령이 성공하지만 D:\NEWBrushes
폴더 의 타임 스탬프가 현재 날짜와 시간으로 설정되어 있다는 것입니다.
따라서 /DCOPY:T
복사중인 "기본"(최상위) 폴더에는이 기능이 작동하지 않는 것 같습니다.
나는 그것이 작동하고 있다고 생각하지만 대상 폴더의 타임 스탬프는 나중에 작업 순서에서 뒤 따르는 작업에 의해 "단계 화"되고 있습니다.
내가 믿는 것은이 명령에 대해 일어나고 있습니다.
robocopy "C:\Brushes" "D:\NEWBrushes" /COPY:DAT /DCOPY:T
이 같은 것입니다 :
- 폴더
D:\NEWBrushes
가없는 경우 폴더 만들기
- 타임 스탬프를
C:\Brushes
에서D:\NEWBrushes
- 에서 파일 및 서브 폴더를 복사
C:\Brushes
에D:\NEWBrushes
3 단계에서 폴더 내용을 수정 D:\NEWBrushes
하면 타임 스탬프 D:\NEWBrushes
가 변경됩니다.
저에게있어 "해결책"은 robocopy
명령 을 실행 하여 파일과 폴더를 복사 한 다음 (같은) robocopy
명령을 다시 실행하는 것입니다.
따라서 처음 실행할 때 :
robocopy "C:\Brushes" "D:\NEWBrushes" /COPY:DAT /DCOPY:T
모든 파일과 폴더가 복사됩니다. 그런 다음 다시 실행하십시오.
robocopy "C:\Brushes" "D:\NEWBrushes" /COPY:DAT /DCOPY:T
(or)
robocopy "C:\Brushes" "D:\NEWBrushes" /DCOPY:T
두 번째로 robocopy
실행하면 파일이나 폴더 D:\NEWBrushes
가 수정 되지 않으며 /DCOPY:T
옵션은 첫 번째 실행 이후에 변경된 폴더 / 파일이없는 한 robocopy
타임 스탬프를 복사하도록 C:\Brushes
지시 합니다.D:\NEWBrushes
C:\Brushes
robocopy
rsync
이지만 대상 폴더 끝에 슬래시가 없으면 어떻게합니까? GUI를 사용하는 대신 명령 줄 수준에서 스크립트를 수정하려고하면 어떻습니까? 명령 줄 도구가 필요한 작업을 수행한다는 사실을 알고 있습니다.