TAG Clouds

New Postings

  • 자신만의 길을 찾을 수 있는 유일한 방법은 그 길에 직접 들어서는 것이다.
    - 윌리엄 클라크


프로그래밍
2005.08.05 13:38

REDIRECTION AND PIPELINE | 유닉스 기초

조회 수 10601 추천 수 7 댓글 0
REDIRECTION

유닉스에서 표준 입출력은 키보드와 화면이다. redirection이란 표준 입출력 대신 일반 파일이나  device로 입출력을 변경하는 것을 말한다.

<  : 입력
>  : 출력
>> : 출력(append)

redirection에 대해서는  에러에 관한 것만 언급하겠다.
유닉스에서는 에러가 출력되는 장치로 모니터가 지정되어 있다. redirection을 사용하여 에러 결과를 파일로 받아 보자.
/home/users/ > cat aaa > bbb
여기서 aaa는 /home/users 라는 디렉토리에 없는 파일이라고 가정하자. 파일이 없으니 "cat: 0652-050 Cannot open aaa."과 같은 에러가 출력된다.  그러나 bbb 파일에는 에러 내용이 담기지 않는다.

유닉스에서는 에러가 화면으로 출력되게끔 지정되어 있다.  파일로 에러 내용을 받는 방법은 쉘의 종류에 따라 다르다. 본쉘이나 콘쉘에서는 다음과 같이 사용한다.
/home/users/ > cat aaa  2> bbb
"2"와 ">"사이에는 공백이 없어야 한다.

그리고 C쉘에서는
/home/users/ > cat aaa >& bbb 와 같이 사용한다.
  
PIPELINE  
어떤 명령어의 출력이 다른 명령어의 입력으로 사용될 때가 많이 있다. 예를 들어 "who"라는 명령어는 누가 현재 login하여 사용하는가에 대한 정보를 보여준다.
사용자 한 명당, 한 라인에 정보를 보여주므로 전체 라인 수가 현재 login한 사용자 수가
된다.  "who"라는 명령어를 쳤을 때 한 화면 이상 출력되면 라인 수를 일일이 count해야 한다. 또는 파일로 담아 다시 "wc(word count)" 명령어를 사용하여 count 할 수 있다.
다음과 같이...

/home/users/ > who > who.out
/home/users/ > wc -l  who.out
/home/users/ > rm who.out

여기서 보듯이 "who"의 출력 결과를 "who.out"이라는 파일에 만들고, 다시 "wc -l" 의 입력 파일로 사용하고 있다. 그리고 "rm" 명령어로 "who.out"을 삭제한다.
불필요한 파일이기 때문에 디스크를 정리하는 차원에서 삭제하는데 꼭 습관화하는 것이 좋다.

<명령어 wc>
   이 명령어는 파일의 바이트, 단어 그리고 라인 수를 출력한다.
   사용법 : wc [-c] [-w] [-l] [file]
            -c : 바이트 수를 출력.
            -w : 단어 수를 출력.
            -l : 라인 수를 출력.

위의 예를 한 문장으로 바꿔 보자.

/home/users/ > who | wc -l

얼마나 간단한가? 삭제할 파일도 없다.

이런 이유로 파이프 라인(pipe lines)을 사용한다.

"|(vertical bar, 파이프 기호라고 함)"는 두개의 명령어를 연결한다. "|"를 기준으로 왼쪽은 표준 출력을 만들어 내고, 오른쪽은 표준 출력을 표준 입력으로 사용한다. 파이프 기호를 여러 개 같이 사용할 수도 있다.

command1 | command2 | command3 ...

어떤 프로그램을 실행시켜 출력은 화면으로 보면서 파일로 그 출력을 저장시키고 싶은 경우가 있다. 유닉스에서 이런 일을 pipe fitting이라고 하는데 "tee"라는 명령어를 통해 수행시킬 수 있다.

/home/users/ > ls | tee ls.out

<명령어 tee>
   이 명령어는 어떤 program의 출력을 화면에 display하고 결과를 파일에 저장하기 위해
   사용.
   사용법 : tee [-a] [filename]
            -a : 파일을 overwrite하지 않고 append 함.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수 추천 수
215 일반 추석 인사말 모음 Dreamy 2013.09.20 10214 0
214 성가대 청소년 성가 중 쓸만한 곡 Dreamy 2011.03.03 9997 0
213 교리교안 천주교에 대한 몇가지 질문 file Dreamy 2004.06.06 10283 67
212 교리교안 천사론 file Dreamy 2004.06.06 11319 22
211 일반 천문기호 모음 file Dreamy 2010.03.03 11529 0
210 취미 창민,이현 - 밥만잘먹더라 Dreamy 2012.10.18 3754 0
209 일반 집에서 두부 만들기 Dreamy 2017.09.12 2211 0
208 게임 중독성 디펜스 게임 Cursed Treasure Dreamy 2010.11.24 13676 0
207 교리교안 주님께서 원하시는 것 file Dreamy 2004.06.06 10281 50
206 취미 좋아하는 노래들, 가사와 코드 모음 file Dreamy 2010.08.06 14695 0
205 취미 정용화 - 반말송 Dreamy 2012.10.18 3915 0
204 취미 정용화 - 그리워서 Dreamy 2012.10.18 4224 0
203 영어 접두사 trans- 관련 단어 Dreamy 2015.08.26 3440 0
202 성가대 전례력에 따른 특별 찬미가 선곡 목록 작성 Dreamy 2009.12.02 12791 0
201 일반 저녁에 들으면 좋은 노래 Dreamy 2013.06.11 2925 0
Board Pagination ‹ Prev 1 2 3 4 5 6 7 8 9 10 11 12 ... 17 Next ›
/ 17

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Designed by sketchbooks.co.kr / sketchbook5 board skin

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5