기호
기호 | 기능 | 예 |
---|---|---|
> | 출력을 파일에 보낸다. 파일이 없으면 않으면 생성한다. 파일이 있으면 덮어씌운다. | 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를 참고한다.
Author Details
Kubernetes, DevSecOps, AWS, 클라우드 보안, 클라우드 비용관리, SaaS 의 활용과 내재화 등 소프트웨어 개발 전반에 도움이 필요하다면 도움을 요청하세요. 지인이라면 가볍게 도와드리겠습니다. 전문적인 도움이 필요하다면 저의 현업에 방해가 되지 않는 선에서 협의가능합니다.