[Windows7] [cmd] redirection operator ( 리디렉션 오퍼레이터 ) & 탈출문자 ^
COM2010. 12. 5. 13:49 |표준입출력은 디폴트로 키포드와 모니터이다. 그것을 > ( ---> 방향 ) 과 < ( <--- 방향 ) 을 이용해, 입출력 방향을 바꿔줄수 있다.
참고로, > 는 덮어쓰기(overwrite)가 기본이므로, 덧붙여야 (append ) 할때는 >> 를 쓰도록 한다.
예제로, 환경변수와 네트워크 설정정보를 test.txt 라는 문서로 저장해보자.
다음과 같이 입력한다.
여기서 && 는 command separator 로 두 커맨드를 한줄에 입력할때 사용한다. ( doskey 가 default 로 ON 되어있다. )
&& 로 구분된 좌우를 두줄로 따로 따로 친것과 동일하다.
첫번째 커맨드에서 > 로 오버라이트 모드로 쓰고, 두번재 커맨드에서 같은파일에 어팬드모드로 쓴것이다.
c드라이브로 가서, test.txt 를 열어보면, 환경변수 정보와 ip 설정정보를 볼 수 있다.
< 를 사용해서, 만들어진 test.txt 파일을 한페이지씩 화면에서 보기위해, more < test.txt 라고 입력해보자.
리디렉션 대상으로 다음을 사용할 수 있다.
NUL null ( 아무짓도 안함 )
COM1 , COM2 , COM3 , COM4 등 직렬포트
LPT1 , LPT2 등 병렬포트
CLOCK$ 클락
AUX 보조장치 ( 보통 COM1 )
PRN 프린터 ( 보통 LPT1 )
CON 콘솔 ( 키보드 , 모니터 )
C에서, printf 따위로 제어문자열을 출력할때, 이스케이프 문자로 \를 썼었는데, 그것과 마찬가지로, 탈출문자 ^ 를 쓸 수 있다.
즉, > 는 리디렉션 이지만, ^> 는 그냥 문자 > 이다.
가령, echo a>b 라고 하면, a 를 b 에 저장한다. ( b는 확장자는 없지만, 텍스트문서이다. )
반면, echo a^>b > c 라고 하면, c 에 문자열 a>b 를 저장한다.
마찬가지로, 리디렉션의 append 모드인 >> 의 경우, ^>^> 따위로 쓰면 된다.
참고로, > 는 덮어쓰기(overwrite)가 기본이므로, 덧붙여야 (append ) 할때는 >> 를 쓰도록 한다.
예제로, 환경변수와 네트워크 설정정보를 test.txt 라는 문서로 저장해보자.
다음과 같이 입력한다.
여기서 && 는 command separator 로 두 커맨드를 한줄에 입력할때 사용한다. ( doskey 가 default 로 ON 되어있다. )
&& 로 구분된 좌우를 두줄로 따로 따로 친것과 동일하다.
첫번째 커맨드에서 > 로 오버라이트 모드로 쓰고, 두번재 커맨드에서 같은파일에 어팬드모드로 쓴것이다.
c드라이브로 가서, test.txt 를 열어보면, 환경변수 정보와 ip 설정정보를 볼 수 있다.
< 를 사용해서, 만들어진 test.txt 파일을 한페이지씩 화면에서 보기위해, more < test.txt 라고 입력해보자.
리디렉션 대상으로 다음을 사용할 수 있다.
NUL null ( 아무짓도 안함 )
COM1 , COM2 , COM3 , COM4 등 직렬포트
LPT1 , LPT2 등 병렬포트
CLOCK$ 클락
AUX 보조장치 ( 보통 COM1 )
PRN 프린터 ( 보통 LPT1 )
CON 콘솔 ( 키보드 , 모니터 )
C에서, printf 따위로 제어문자열을 출력할때, 이스케이프 문자로 \를 썼었는데, 그것과 마찬가지로, 탈출문자 ^ 를 쓸 수 있다.
즉, > 는 리디렉션 이지만, ^> 는 그냥 문자 > 이다.
가령, echo a>b 라고 하면, a 를 b 에 저장한다. ( b는 확장자는 없지만, 텍스트문서이다. )
반면, echo a^>b > c 라고 하면, c 에 문자열 a>b 를 저장한다.
마찬가지로, 리디렉션의 append 모드인 >> 의 경우, ^>^> 따위로 쓰면 된다.