리눅스 분류
쉘스크립트에 대해서 질문 드립니다. |(파이프)
작성자 정보
- 황순혁 작성
- 작성일
컨텐츠 정보
- 2,561 조회
- 3 댓글
- 0 추천
- 목록
본문
간단한 쉘스크립트를 테스트 하려고 하는데..다음과 같은 명령이 제대로 수행 되질 않습니다..
cat /etc/logrotate.conf | grep -v "#" | grep -E "include" | awk '{print $2}' | ls
awk명령 까지는 출력값이 제대로 나오지만.. 이후 파이프를 통해 ls명령의 입력으로 값이 넘어가질 않습니다.. 그래서 다음고 같이 테스트를 해봤는데..역시나 '| ls'로는 출력값이 넘어가질 않습니다..
#cat a.tmp | ls
무엇이 문제인지.. |(파이프) 명령을 잘못 사용한건지.. 조언 부탁드립니다..(_ _)>
관련자료
-
이전
-
다음
댓글 3
허태훈님의 댓글
- 허태훈
- 작성일
ls는 파일 또는 디렉토리 경로의 내용을 나열합니다. #cat a.tmp | ls 하시면 a.tmp 파일의 내용을 standard output로 출력하는데 이결과을 받아 ls 로 출력이 가능할까요? 아마 ls 명령어 결과만 출력 될것입니다. cat a.tmp는 출력되지 않고 ls 만 출력됩니다. cat /etc/logrotate.conf | grep -v "#" | grep -E "include" | awk '{print $2}' | ls 에서 ls 명령어를 사용하지 마세요. 무슨 이유로 ls 를 사용하시는지 ?
황순혁님의 댓글
- 황순혁
- 작성일
'| ls'이전의 결과값이 '/etc/logrotate'라는 값입니다. 이 경로는 디렉토리를 의미하거든요 그래서 이 값을 가지고 ls 명령을 통해..디렉토리안의 내용을 보고 싶어서 저렇게 사용해봤습니다.. stdout로 나가는 결과값을 | 로 넘길 방법은 엄는지요??
황순혁님의 댓글
- 황순혁
- 작성일
아 그리고 다른 명령들의 결과값욕시 stdout으로 나가지 않나요?? grep이나 awk등등.. 이런것들은 어찌 | 를 통해 결과값이 전해지는지???