Tuesday, April 3, 2018

CentOS 6.6 리눅스 기초] 14. 리다이렉션 기호 (I/O Redirection)

안녕하세요. 썬구루입니다. 이 게시물에서는 리눅스 명령 실행 시 자주 사용되는 리다이렉션 기호(I/O Redirection)에 대해 알아보도록 하겠습니다. 리다이렉션 기호는 표준 입력 또는 표준 출력의 방향을 돌리기 위해 사용되는 기호입니다.

리눅스나 유닉스에서 터미널을 사용하는 텍스트 명령에서는 표준 입력(Standard Input)을 사용자의 키보드를 통해 받죠. 그리고 그에 대한 결과값이 모니터로 표준 출력(Standard Output) 됩니다. 또는 명령에 대한 오류가 날 때 표준 오류(Standard Error)가 모니터로 출력됩니다. 표준 입력, 출력, 오류를 리다이렉션 기호를 사용하여 방향을 재지정할 수 있습니다.

리다이렉션 기호
내 용
>
 표준 출력에 대한 기호이다.  기호 뒤에 파일 이름이 오면 그 파일로 명령의 결과값을 입력한다. 존재하는 파일이면 내용을 덮어쓰고 존재하지 않는 파일이면 파일을 생성하고 결과값을 입력한다.
>>
 표준 출력에 대한 기호이다.  기호 뒤에 파일 이름이 오면 그 파일로 명령의 결과값을 입력한다. 존재하는 파일이면 파일의 마지막 줄 이후로 내용을 추가한다. 존재하지 않는 파일이면 파일을 생성하고 결과값을 입력한다.
<
 표준 입력에 대한 기호이다. 기호 뒤에 파일 이름이 오면 그 파일의 내용을 명령의 표준 입력으로 받아들인다.
CMD1 | CMD2
 명령의 표준 출력을 다른 명령의 표준 입력으로 전달하기 위해 사용하는 기호이다. 이 기호를 파이프라인(Pipeline)이라 읽는다.
2>
 표준 오류에 대한 기호이다. 기호 뒤에 파일 이름이 오면 그 파일로 명령의 표준 오류 값을 입력한다.
2>>
 표준 오류에 대한 기호이다. 기호 뒤에 파일 이름이 오면 그 파일로 명령의 표준 오류 값을 입력한다. 존재하는 파일이면 파일의 마지막 줄 이후로 내용을 추가한다. 존재하지 않는 파일이면 파일을 생성하고 결과값을 입력한다.

아래는 > 와 >> 리다이렉션 기호 사용의 예이다.  둘의 차이를 잘 보면 >> 는 추가의 개념인 것을 확인할 수 있다.




아래는 more 명령의 결과값을 head 명령의 입력값으로 방향을 재지정하기 위해 | (파이프라인) 기호를 사용한 것을 보여준다. 그리고 sort 명령의 입력값을 /etc/passwd 파일의 내용으로부터 받기 위해 < 기호를 사용한 것을 보여준다.







No comments:

Post a Comment