2013-07-19 2 views
1

grep에서 행이 일부 정규 표현식을 충족 할 때까지 출력을 표시하는 옵션이 있습니까? 예에서Grep - 행이 비어있을 때까지 행 인쇄

는 foo.log :

request1: POST /foo 
params 
some payload 

request1: tag 
some payload 

request2: POST /foo 
params 
some payload 

나는 grepfoo.log이 같은 request1에 대한 모든 정보를 얻을 싶습니다 :

request1: POST /foo 
params 
some payload 

request1: tag 
some payload 

이 가능 (-A 옵션과 같이) 아니면 그냥 정규 표현식을 사용해야합니까 ?? 일치하는 라인의 전체 단락을 인쇄

가끔 보았다 AIX에서
awk -v RS="" -v ORS="\n\n" '/request1/' foo.log 
+1

'그렙 -p' : – fedorqui

답변

3

이 줄을 시도합니다.
+0

와우, 정말 고마워! 방금'cat foo.log | xargs awk -v RS = ""-v ORS = "\ n \ n" '/ request1 /''이유를 아십니까? –

+1

'cat 파일 | xargs awk', 그냥'awk 파일'. 즉, 켄트가 게시 한 명령으로 충분하며 필요한 모든 작업을 수행합니다. – fedorqui

+1

@fedorqui가 옳습니다. Slawosz, 그냥 내 라인 CPP, 그리고 귀하의 파일과 파일 이름을 바꿉니다. – Kent

관련 문제