파일이나 폴더를 복사할 때 CTRL+C(복사)와 CTRL+V(붙여넣기) 단축키를 사용하여 주로 복사 작업을 하게 됩니다.
이렇게 복사를 하면 폴더와 하위 폴더에 있는 모든 파일들도 함께 복사가 됩니다.
PC를 사용하면서 폴더 내에 있는 파일은 모두 제외하고 하위 폴더를 포함한 전체 폴더 구조만 새로 만들어야 하는 경우가 있습니다.
예를 들어 연도별로 만들어지는 폴더 안에 많은 양의 하위 폴더가 복잡한 구조로 만들어져 있는 경우 연도가 바뀌면 동일한 구조로 하위 폴더들을 매번 또 만들어 주어야 합니다.
만들어야 할 하위 폴더가 많고 구조가 복잡할 경우 일일이 직접 만들어 주는게 결코 쉽지만은 않습니다.
그렇다고 단순히 복사 및 붙여넣기로 동일한 구조의 폴더를 만들었을 경우 이번에는 함께 복사된 파일을 일일이 폴더를 옯겨가며 찾아서 삭제해야 하는 번거로운 작업을 해 주어야 합니다.
물론 이렇게 통째로 복사한 다음 하위 폴더를 포함한 폴더 내에 있는 파일만 모두 삭제하는 방법을 사용할 수도 있지만 이번 글에서는 한 번의 명령어 실행으로 폴더 내에 있는 파일은 제외하고 폴더 구조만 똑같이 복사는 방법에 대해 알아보겠습니다.
▼ 아래 화면은 C 드라이버의 Temp라는 폴더입니다. 예제에서 사용할 하위 폴더와 폴더 내에 파일들이 존재하는 Source 폴더입니다.
※ 아래 설명를 진행하기에 앞서 윈도우 파일 탐색기에서 “폴더“와 명령 프롬프트의 “디렉터리“는 같은 의미로 사용됩니다.
XCOPY 명령어를 사용하여 폴더 구조만 복사해서 만드는 방법
– XCOPY는 파일과 디렉터리 트리를 복사하는 명령어 입니다.
1. XCOPY 또는 다음 단락에서 설명할 ROBOCOPY 명령어를 사용하기 위해 명령 프롬프트 창을 엽니다.
실행에 “cmd“를 입력하고 [확인]을 클릭하거나 검색에서 “명령 프롬프트“로 검색해서 실행하면 됩니다.
2. 명령 프롬프트에서 아래 화면처럼 XCOPY 명령어를 입력하고 엔터를 누릅니다.
XCOPY “C:\Temp” “C:\Temp2” /t /e
|
앞의 “C:\Temp”는 [SourcePath] 입니다. 구조를 복제하려는 폴더의 전체 경로를 입력해 주면 됩니다.
뒤의 “C:\Temp2″는 [DestinationPath] 입니다. 복제할 폴더의 전체 경로를 입력해 주면 됩니다.
3. DestinationPath로 지정한 Temp2가 대상의 파일인지? 대상의 디렉터리 이름인지? 확인하는 프롬프트가 뜨면 폴더 구조를 복사하는 것이기 때문에 “D“를 입력하고 엔터를 쳐 줍니다.
XCOPY 스위치 설명 :
- /T : 파일은 복사하지 않고 디렉터리 구조만 복사합니다. 빈 디렉터리와 하위 디렉터리는 포함되지 않습니다.
- /E : 비어 있는 경우를 포함하여 디렉터리와 하위 디렉터리를 복사합니다.
- /T /E 스위치를 함께 사용하면 빈 디렉터리와 하위 디렉터리가 포함됩니다.
Robocopy 명령어를 사용하여 폴더 구조만 복사해서 만드는 방법
– ROBOCOPY는 Windows용 견고한 파일 복사 명령어입니다.
– ROBOCOPY 명령어를 사용해서 XCOPY 명령어와 동일하게 폴더 구조만 복사가 가능합니다.
1. 명령 프롬프트에서 아래 화면처럼 ROBOCOPY 명령어를 입력하고 엔터를 누릅니다.
ROBOCOPY “C:\Temp” “C:\Temp2” /e /xf *
|
앞의 “C:\Temp”는 [SourcePath] 입니다. 구조를 복제하려는 폴더의 전체 경로를 입력해 주면 됩니다.
뒤의 “C:\Temp2″는 [DestinationPath] 입니다. 복제할 폴더의 전체 경로를 입력해 주면 됩니다.
ROBOCOPY 스위치 설명 :
- /E : 비어 있는 디렉터리를 포함하여 하위 디렉터리를 복사합니다.
- /XF * : 지정된 이름/경로/와일드카드와 일치하는 파일을 제외합니다. 와일드카드 *는 모든 파일을 의미합니다.
▼ 아래 화면은 XCOPY 또는 Robocopy 명령어를 사용하여 폴더 구조만 복사한 뒤의 Temp2 폴더입니다.
원본의 Temp 폴더 내에 있던 파일은 모두 제외되고 폴더 구조만 Temp2 폴더로 복사 된 것을 확인할 수 있습니다.
※ 폴더 구조를 복사해야 하는 경우 xcopy 또는 robocopy 명령어를 사용하여 간단하게 처리하는 방법에 대해 알아보았습니다.
※ 명령 프롬프트에서 사용하는 명령어는 대/소문자를 구분하지 않습니다.
xcopy, XCOPY, Xcopy 또는 RoboCopy, Robocopy, ROBOCOPY 모두 동일하게 실행됩니다.
명령어 뿐만 아니라 옵션(스위치) 또한 대/소문자 구분없이 사용가능합니다. /e 또는 /E 둘 중에 아무거나 사용해도 동일하게 옵션(스위치) 처리됩니다.
※ 함께 읽으면 도움이 될 만한 다른 포스팅 글입니다.
이 글이 도움이 되었기를 바랍니다. ^-^