윈도우 명령 줄

  • Post Author:
  • Post Category:칼럼
  • Post Comments:0 Comments
  • Post last modified:October 11, 2013

기호

기호 기능
> 출력을 파일에 보낸다. 파일이 없으면 않으면 생성한다. 파일이 있으면 덮어씌운다. dir > t.txt
>> 출력을 파일에 보낸다. 파일이 없으면 생성한다. 파일이 있으면 붙여쓴다. dir >> t.txt
< 파일의 내용을 명령어의 입력값으로 보낸다. 명령 < 파일1
| 명령의 출력값을 다른 명령의 입력값으로 보낸다. 명령1  | 명령2
& 명령1을 실행하고 나서 명령2를 실행한다. 명령1 & 명령2
&& 명령1이 성공하면 명령2를 실행한다. 명령1 && 명령2
|| 명령1이 실패했을 때만 명령2를 실행한다. 명령1 && 명령2
@ 명령의 출력이 보이지 않게 한다. 배치 파일의 윗줄에 보통 넣는다. @echo off

자주 쓰는 명령어

디렉터리

디렉터리 생성은 mkdir 또는 그 약어 md 명령을 사용한다.

mkdir myfolder

여기까지는 누구나 알지만 다음과 같이 디렉터리 트리를 한번에 만들 수 있다는 사실은 모를 때가 많다.

mkdir myfolderbcd

이렇게 만든 디렉터리를 한꺼번에 지우려면 다음과 같이 한다.

rd /r myfolder

/r 옵션은 myfolder 안에 든 하위 디렉터리와 파일을 모두 삭제한다.

복사

copy

역사가 깊은 복사 유틸리티인만큼 그 기능이 빈약하다. 파일 복사만 가능하며 폴더를 처리 못한다. 다시 말해 폴더를 통째로 복사하는 등의 작업엔 쓰지 못한다. 뒤에 등장할 xcopy나 robocopy를 놔두고 copy를 쓸 이유는 더이상 없다.

xcopy

copy와 달리 폴더도 처리가능하며 그 외에도 기능집합이 풍부하여 널리 쓰인다. 기능이 매우 많으므로 그 중 몇 가지만 골라 살펴보자.

재귀적 복사

우선 예제용으로 디렉터리 트리를 하나 만든다.

c:>mkdir abcd

이 디렉터리 트리를 고스란히 복사하려면 /S 또는 /E 옵션을 쓴다. 두 옵션의 차이점은 다음과 같다.

  • /S : 재귀 복사를 한다. 이때 빈 폴더는 복사하지 않는다.
  • /E : 재귀 복사를 한다. 빈 폴더도 복사한다.

우리가 만든 디렉터리 트리를 고스란히 복사하려면 /E 옵션을 사용해야 한다. 실제로 /E 옵션을 사용해 abcd 디렉터리 트리를 복사하면 다음과 같은 결과가 나온다.

c:>xcopy /E a a1
0 File(s) copied

c:>dir /s a1
 Volume in drive C has no label.
 Volume Serial Number is 1600-5A96

 Directory of c:a1

2009-08-12  오후 03:12    <DIR>          .
2009-08-12  오후 03:12    <DIR>          ..
2009-08-12  오후 03:12    <DIR>          b
               0 File(s)              0 bytes

 Directory of c:a1b

2009-08-12  오후 03:12    <DIR>          .
2009-08-12  오후 03:12    <DIR>          ..
2009-08-12  오후 03:12    <DIR>          c
               0 File(s)              0 bytes

 Directory of c:a1bc

2009-08-12  오후 03:12    <DIR>          .
2009-08-12  오후 03:12    <DIR>          ..
2009-08-12  오후 03:04    <DIR>          d
               0 File(s)              0 bytes

 Directory of c:a1bcd

2009-08-12  오후 03:04    <DIR>          .
2009-08-12  오후 03:04    <DIR>          ..
               0 File(s)              0 bytes

     Total Files Listed:
               0 File(s)              0 bytes
              11 Dir(s)  90,202,824,704 bytes free
특정 날짜 이후에 변경된 것만 복사하기

차등 백업을 구현하고플 때도 xcopy가 도움이 된다.

xcopy myfolder mybackup /E /d:06-01-2003

/d 옵션에 날짜를 지정하면, 그 날짜 이후에 변경된 파일만 골라 복사한다.

robocopy

robocopy가 xcopy보다 나은 점은 다음과 같다.

  • 네트워크 드라이브에서 복사할 때 오류를 더 잘 견딘다. xcopy는 한번 오류가 나면 실패처리하고 끝난다. 그에 반해 robocopy는 재시도 기능이 있으며 네트워크 연결이 복구되었을 때 실패한 지점부터 다시 파일을 복사한다.
  • 복사할 파일 개수가 많을 때 xcopy는 충돌이 나지만 robocopy는 그렇지 않다.

그 외에 여러 장점이 있지만 핵심적인 장점은 위와 같다. 더 자세히 알고 싶다면 Robocopy를 참고한다.

Kubernetes, DevSecOps, AWS, 클라우드 보안, 클라우드 비용관리, SaaS 의 활용과 내재화 등 소프트웨어 개발 전반에 도움이 필요하다면 도움을 요청하세요. 지인이라면 가볍게 도와드리겠습니다. 전문적인 도움이 필요하다면 저의 현업에 방해가 되지 않는 선에서 협의가능합니다.
follow me
  • RT @not_unot_u: 네 번째 올리신 청원글이에요. 너무 고생하고 계시는데 동의 한 번 씩 부탁드립니다. 거의 다 왔습니다! 7월 11일 마감인데 이제 2만명만 채우면 청와대 답변 받을 수 있어요. https://t.co/3mVDM3jsrP
    15 hours ago
  • 그런데 전화를 받은 윤석열 검찰총장이 박 장관에게 ‘(조국 후보자가) 이제 그만 물러나라는 뜻으로 제가 (압수수색을) 지시했습니다’ 이렇게 말했다는 거지. 윤석열을 대통령으로 뽑은 기억은 없는데 희안하구만 https://t.co/yEEQXfey4g
    21 hours ago
  • 훌륭한 시스템을 체험하지 못한 사람이 시스템의 부재로 야기되는 문제를 인식할 수 있을까? “난 잘하고 있는데 왜 너는 자꾸 불평하느냐?”라고 생각하지 않을까?
    2 days ago
Buy me a coffeeBuy me a coffee
×
Kubernetes, DevSecOps, AWS, 클라우드 보안, 클라우드 비용관리, SaaS 의 활용과 내재화 등 소프트웨어 개발 전반에 도움이 필요하다면 도움을 요청하세요. 지인이라면 가볍게 도와드리겠습니다. 전문적인 도움이 필요하다면 저의 현업에 방해가 되지 않는 선에서 협의가능합니다.
Latest Posts