리눅스 활용리눅스마스터 2급 · 2011년12월10일 · 21/80
21.쉘의 기능 중 파이프(pipe)에 대한 설명으로 알맞은 것은?
1
파이프를 형성하는 심볼은 < 와 > 이다.
2
한 명령의 표준 입력을 다른 명령의 표준 출력으로 보내는 동작을 일컫는다.
3
모든 리눅스 명령은 파이프와 함께 사용할 수 있다.
4
한 명령행에서 여러 개의 파이프를 함께 사용할 수도 있다.정답
해설
리눅스에서 사용하는 파이프는 <와 >(pipe redirection)도 있지만, |(pipe line)도 있다. 보통 'pipe'는 'pipe line'을 의미하고 'pipe redirection'은 의미하지 않는다. 파이프는 한 명령의 표준 출력을 다른 명령의 표준 입력으로 받는다. 대표적으로 gzip 옵션을 사용하지 않는 tar를 이용한 gzip 압축이 있다. tar로 파일을 묶은 뒤, gzip으로 표준 출력하여 gzip에서 입력을 받아 압축하는 형태이다. tar cvf - /home/test | gzip -c > archive.tar.gz 위 명령어는 /home/test 폴더를 표준 출력(-)으로 gzip쪽으로 보내는 명령어이다. 마지막으로 gzip에서 압축이 끝나면 리디렉션 하여 archive.tar.gz 파일을 최종적으로 생성하게 된다. 리눅스의 모든 명령어를 파이프와 함께 사용할 수는 없다. 대표적으로 vi 편집기를 파이프와 같이 사용하려 하면 제대로 작동하지 않는 것을 확인할 수 있다. 마지막으로, 여러 파이프를 사용할 수 있는데, 아래와 같이 하면 된다. $ ls -l | tee home_list | cat home_list -rw-r--r-- 1 * * 0 Mar 5 10:04 home_list