Programming

일치하는 각 줄의 위와 아래에 grep을 어떻게 인쇄 할 수 있습니까?

procodes 2020. 3. 4. 07:49
반응형

일치하는 각 줄의 위와 아래에 grep을 어떻게 인쇄 할 수 있습니까? [복제]


가능한 중복 :
파일을 grep하지만 몇 줄의 주변 줄을 표시합니까?

매우 큰 파일을 구문 분석해야하며 grep 명령 (또는 다른 도구)을 사용하고 싶습니다.

각 로그 줄에서 단어를 검색 FAILED한 다음 일치하는 줄뿐만 아니라 각 일치하는 줄 위와 아래에 줄을 인쇄하고 싶습니다 .

예를 들면 다음과 같습니다.

id : 15
Satus : SUCCESS
Message : no problem

id : 15
Satus : FAILED
Message : connection error

그리고 나는 인쇄해야합니다 :

id : 15
Satus : FAILED
Message : connection error

grep의 -A 1옵션은 한 줄 후에 나타납니다. -B 1한 줄 전에 줄 것이다; -C 1콤바인 모두는 당신에게, 전후 한 줄 제공하는 -1동일한 작업을 수행합니다.


-B, -A 또는 -C 옵션 사용

grep --help
...
-B, --before-context=NUM  print NUM lines of leading context
-A, --after-context=NUM   print NUM lines of trailing context
-C, --context=NUM         print NUM lines of output context
-NUM                      same as --context=NUM
...

-A 및 -B 스위치를 사용하십시오 (평균 라인 이후 및 라인 이전).

grep -A 1 -B 1 FAILED file.txt

참고 URL : https://stackoverflow.com/questions/1072643/how-can-i-make-grep-print-the-lines-below-and-above-each-matching-line



반응형