Robocopy란?
Robocopy는 Windows vista부터 사용할 수 있으며, Windows 명령(CMD) 명령 행에서 가장 강력한 도구 입니다.
Robocopy는 XCOPY의 업그레이드 버전으로 로컬 또는 네트워크 파일을 복사 또는 미러링을 할 수 있습니다
ROBOCOPY의 장점
- 많은 양의 파일을 복사
- 진행 중 표시
- 복사 멀티 스레딩
- 속성, 소유자 정보, 날짜 등도 변경할 수 없는 파일 사용 권한을 유지하고 속성으로 정확하게 모든 정보를 복사
- log파일로 백업, 일치화 진행내역을 저장
ROBOCOPY의 옵션
명령어 | 설명 |
/S | 비어 있는 디렉터리는 제외하고 하위 디렉터리를 복사합니다. |
/E | 비어 있는 디렉터리를 포함하여 하위 디렉터리를 복사합니다. |
/R:[횟수] | 오류의 경우 재시도 횟수 입니다 |
/W:[횟수] | 다시시도 대기시간 입니다 |
/V | 자세한 정보를 출력하며 건더뛴 파일을 표시합니다 |
/L | 목록 전용 - 파일을 복사 또는 삭제하거나 타임스탬프를 만들지 않습니다 |
/FP | 출력되는 파일의 전체 경로 이름을 포합합니다 |
/MAX:[크기] | 최대 파일 크기 - 옵션에 크기가 초과한 파일을 제외합니다. |
/MIN:[크기] | 최소 파일 크기 - 옵션에 크기가 미만인 파일을 제외합니다. |
/MAXAGE:[날짜] | 최대 파일 사용기간 - 옵션의 날짜보다 오래된 파일을 제외합니다 ex) /MAXAGE:20200516 |
/MINAGE:[날짜] | 최소 파일 사용기간 - 옵션의 날짜보다 최신의 파일을 제외합니다 ex) /MAXAGE:20200516 |
/RH: HHMM-HHMM | 실행시간 - 새 복사본을 시작할 수 있는 시작시간 입니다 |
/LOG:[파일이름] | 실행시 상태를 로그파일에 출력합니다. (기존 로그에 덮어씁니다) |
/LOG+:[파일이름] | 실행시 상태를 로그파일에 출력합니다. (기존 로그에 추가합니다) |
/LEV:n | 원본 디렉터리 트리의 최상위 n개 수준만 복사합니다. |
/Z | 다시 시작 모드에서 파일을 복사합니다. |
/B | 백업 모드에서 파일을 복사합니다. |
/ZB | 다시 시작 모드를 사용합니다. 액세스가 거부된 경우 백업 모드를 사용합니다. |
/J | 버퍼를 사용하지 않은 I/O로 복사합니다(큰 파일에 권장). |
/EFSRAW | EFS RAW 모드에서 암호화된 모든 파일을 복사합니다. |
/COPY:copyflag[s] | 파일에 대해 복사할 내용입니다. 기본값은 /COPY:DAT입니다. (copyflags : D=데이터, A=특성, T=타임스탬프, X=대체 데이터 스트림 건너뛰기). (S=보안=NTFS ACL, O=소유자 정보, U=감사 정보). |
/SEC | 보안된 파일을 복사합니다. /COPY:DATS와 동일합니다. |
/COPYALL | 모든 파일 정보를 복사합니다. /COPY:DATSOU와 동일합니다. |
/NOCOPY | 파일 정보를 복사하지 않습니다. /PURGE와 사용하면 좋습니다. |
/SECFIX | 건너뛴 파일도 포함하여 모든 파일의 파일 보안을 수정합니다. |
/TIMFIX | 건너뛴 파일도 포함하여 모든 파일의 파일 시간을 수정합니다. |
/PURGE | 원본에 없는 대상 파일/디렉터리를 삭제합니다. |
/MIR | 디렉터리 트리를 미러링합니다. /E와 /PURGE를 함께 쓰는 것과 동일합니다. |
/MOV | 파일을 이동합니다. 복사한 다음 원본에서 삭제합니다. |
/MOVE | 파일 및 디렉터리를 이동합니다. 복사한 다음 원본에서 삭제합니다. |
/A+:[RASHCNET] | 제공된 특성을 복사된 파일에 추가합니다. |
/A-:[RASHCNET] | 제공된 특성을 복사된 파일에서 제거합니다. |
/CREATE | 디렉터리 트리와 길이가 0인 파일만 만듭니다. |
/FAT | 8.3 FAT 파일 이름만 사용하여 대상 파일을 만듭니다. |
/256 | 256자를 초과하는 매우 긴 경로에 대한 지원을 사용하지 않습니다. |
/MON:n | 원본을 모니터링합니다. n개 이상의 변경 내용이 표시된 경우 다시 실행합니다. |
/MOT:m | 원본을 모니터링합니다. 변경 내용이 있으면 m분 후에 다시 실행합니다. |
/RH:hhmm-hhmm | 실행 시간 - 새 복사본을 시작할 수 있는 시간입니다. |
/PF | 통과 기준이 아닌 파일당 기준으로 실행 시간을 확인합니다. |
/IPG:n | 패킷 간 간격(ms), 저속 회선에서 사용 가능한 대역폭을 확보합니다. |
/SJ: | 접합을 접합 대상으로 복사하는 대신 접합으로 복사합니다. |
/SL: | 바로 가기 링크를 링크 대상으로 복사하는 대신 링크로 복사합니다. |
/MT[:n] | n개의 스레드가 있는 다중 스레드를 복사합니다(기본값 8). |
/DCOPY:copyflag[s] | 디렉터리에 대해 복사할 내용(기본값은 /DCOPY:DA). (copyflags : D=데이터, A=특성, T=타임스탬프, E=EA, X=대체 데이터 스트림 건너뛰기). |
/NODCOPY | 디렉터리 정보 복사 안 함(기본적으로 /DCOPY:DA 수행). |
/NOOFFLOAD | Windows 복사본 오프로드 메커니즘을 사용하지 않고 파일을 복사합니다. |
/COMPRESS | 파일을 전송하는 동안 네트워크 압축을 요청합니다(해당하는 경우). |
Robocopy는 옵션 중 일부분만 정리를 하였습니다. 그중 많이 사용하는 옵션은 굵은 글씨로 표시 했습니다.
ROBOCOPY 사용법
ex) robocopy ./ C:\Users\jhlee\Downloads\test2 /MIR 실행 전
실행 후1
실행 후2
/MIR은 원본폴더와 대상폴더를 비교하여 원본에는 존재하지만 대상폴더에는 존재하지 않는 파일만 복사를 진행합니다.
만약에 로그를 파일로 저장하고 싶다면 다음 아래와 같이 진행 하시면 됩니다.
로그를 파일로 저장
ex) robocopy ./ C:\Users\jhlee\Downloads\test2 /MIR /LOG:C:\Users\jhlee\Downloads\log\test.log