2016-10-15 4 views
0

grep이 일치하지 않는 행을 반환하는 이유는 무엇입니까? grep이 일치 항목을 강조 표시합니다. 원하는 행동을 어떻게 얻을 수 있습니까? 이것은 우분투에 있습니다.grep이 일치하지 않는 행을 반환하는 이유

$ service --status-all | grep 'friendly'
[? ] apport
[? ] 콘솔 - 셋업
[? ] cryptdisks
[? ] cryptdisks-early
[? ] dns-clean
[+] 친화적 인 -recovery
[?] ] irqbalance
[? ] killprocs

별칭이 재미 있지 않습니다.

$ alias 
alias grep='grep --color=auto' 
+2

복제 할 수없는 것 :이 답을 볼 수 있습니다 자세한 내용은

. 명령 줄에서 –

+1

을 입력하십시오. "which grep"을 사용하여 사용중인 grep을 확인하십시오. 방금 ​​명령 (동일한 별칭 사용)을 시도하고 예상되는 일치 항목을 포함하는 출력 만받습니다. 우분투를 실행하고 있습니다. – mangotang

답변

3

grep이 아닌 것처럼 보입니다. 콘솔에 전송되는 것은 stderr입니다. |

$ 서비스 --status 모두 2> & 1 : 대

$ service --status-all 2> test.txt 
<no output> 

$ service --status-all > test.txt 
[ ? ] apport 
[ ? ] console-setup 
... 

그래서 가능한 솔루션은 stderrstdout 다음 그렙로 리디렉션하는 것입니다 그렙 '친절한'
당신은 이전과 -C 플래그를 사용하여 경기 후 표시되는 컨텍스트의 양을 제어 할 수 친화적 회복 후

관련 문제