본문으로 바로가기
반응형

- 입출력 대상으로 표준 입력, 표준 출력, 표준 오류를 사용하지 않고 다른 경로인 파일로 재지정 하는 것

- 즉, 명령은 리디렉션을 통해 파일로부터 입력 받을 수 있고, 파일로 출력 할 수 있음

- 입출력 재지정을 통해 출력과 입력의 방향을 변경할 수 있음

 

* 참고 : 표준 입력 표준 출력, 표준 에러

- 표준 입력(stdin) : 표준 입력이라고 부르는 곳에서 입력 내용을 가져옴, 기본적으로 키보드에 직접 연결

- 표준 출력(stdout) : 명령이나 프로그램 등의 실행 결과를 표준 출력에 전송, 기본적으로 화면과 연결 되어 있고 디스크

파일에 따로 저장하지 않음

- 표준 오류(stderr) : 명령이나 프로그램 등의 상태 및 오류 메시지를 표준 에러에 전송, 기본적으로 화면과 연결되어 있고 디스크파일에 따로 저장하지 않음

 

1. 표준 입력 재지정 (input redirection)

- 키보드 입력을 파일에서 받도록 대체 하는 것

- < 연산자를 사용해서 키보드로 연결한 표준 입력 방향을 파일로 변경(명시적)

- cat 명령어를 사용하는 것과 동일한 결과를 나타냄

 

2. 표준 출력 재지정(Output Redirection)

- 명령의 실행 결과나 에러 상황을 화면에 출력하지 않고 파일로 저장

 

1) > 연산자를 사용한 표준 출력 재지정

- 파일명 앞에 > 연산자를 사용

- >연산자로 출력 방향을 지정할 때 목적 파일은 항상 처음부터 다시 작성됨(파일 덮어씀)

>> 이렇게 입력시 이어쓰기 가능.

 

ex) ls -al > output.txt   = 현재 디렉토리  리스트가 output.txt 파일에 저장됨

 

 

3. 표준 오류 재지정 

- 리디렉션 연산자가 필요 없음, 쉘은 파일 디스크립터 번호를 이용해서 재지정 할 수 있는 표기를 지원

- 파일 디스크립터 : 표준 입력 - 0, 표준 출력 -1, 표준 오류 -2

- 파일 디스크립터 번호를 리디렉션 연산자 앞에 위치

ex ) find / -perm -4000 2 > /dev/null 

* dev/null 디렉토리는 휴지통 같은 곳이다.

 

4. 파이프 라인

- 둘 이상의 명령을 함께 묶어 출력의 결과를 다른 프로그램의 입력으로 전환 하는 기능

- 즉, 명령어의 표준 출력을 또 다른 명령어의 표준 입력과 연결 시킬 수 있ㅇ므

- 명령어와 명령어의 연결은 | 기호를 사용

- | 기호 앞의 명령 결과가 뒤의 명령에 입력 데이터로 사용

ex ) cat /khg/touch | grep pra   == pra 내용이 들어간 행 출력

반응형