본문 바로가기

정보/기술

xcopy를 이용한 batch만들기

파일을 복사하려고 하는데, 업데이트된 것만 골라서 복사하려고 합니다.
어떻게 하면 좋을까요?

xcopy와 robocopy를 이용하면 쉽고 간단히 다룰 수 있는데, xcopy에 대해 알아보겠습니다.

xcopy

c드라이브 temp폴더 안의 aDir 폴더 아래에 있는 파일을 d드라이브 temp폴더의 bDir로 그대로 복사하려고 합니다.

첫 단계 : 동일 상태로 만들기

xcopy   c:\Temp\aDir   d:\Temp\bDir  /S  /Y

/S : 하위 폴더까지 포함해서 복사
/Y : 만일 같은 파일이 있더라도 묻지 말고 복사


두 번째 단계 : 변경된 내용만 복사하기

xcopy   c:\temp\aDir\*.*    d:\temp\bDir    /D   /S  /Y

/D : 날짜를 지정하면 그 날짜 이후 변경된 것을 복사.
/D:10-05-2020 2020년 10월 05일 이후의 파일을 복사
날짜 지정이 없이 /D만 사용하면 파일을 비교해서 더 최신일 경우에만 복사
/S : 하위 폴더까지 포함해서 복사
/Y : 만일 같은 파일이 있더라도 묻지 말고 복사해라

이외의 옵션

옵션은 대소문자 구분하지 않습니다. 정리는 일관성 있게 알아보도록 대문자로 정리합니다.

/S : 하위 디렉터리 포함
/D : 지정한 날짜 이후 변경된 것을 복사, 날짜 지정이 없으면 더 최신인 파일만 복사
/D:mm-dd-yyyy
/F : 복사 중인 파일의 이름을 출력
/I : 대상 폴더가 없으면 폴더를 생성
/R : 읽기 전용 파일도 복사
/U : 같은 파일명이 있을 때만 복사
/Y : 원본과 같은 파일이 있을 경우 덮어쓸 것인지를 물어보지 않게 한다.

더 다양한 옵션은 참고 사이트를 보시면 좋습니다.

참고