관리 메뉴

피터의 개발이야기

[linux] grep 사용법 본문

Linux

[linux] grep 사용법

기록하는 백앤드개발자 2020. 12. 28. 08:00
반응형

 

ㅁ 들어가며

정말 많이 쓰는 기능이다. 로그를 분석하거나 설정값을 간단히 확인하기 위해서 사용한다.

예를 들어, 사용자의 접속 시간대나 접속한 URL 정보를 확인 할 때에 Access.log을 grep으로 찾을 때에 유용하다.

grep을 잘 이용하면 시스템 로그 분석이 아주 쉬워진다.

 

grep 기능에 대해서 정리해 보자!

 

주요기능은 파일 내용이나 콘솔상의 출력 내용에서 특정 문자열을 필터하여 보여준다.

 

ㅁ 파일에서 xception 필터

> grep xception auth.log

특정 에러가 있을 때에 Exception의 문자열에서 xception으로 검색한다. Exception, exception이 필터된다.

 

ㅁ 대소문자 구분없이 검색

> grep -i exception auth.log

 

 

ㅁ 필터된 문자열 다음 3줄 포함 출력

> grep filterText test.txt -A 3 

 

ㅁ 필터된 문자열 이전 3줄

> grep filterText test.txt -B 3

 

 

ㅁ 필터된 문자열의 줄번호를 찾기

보다 자세한 로그 분석을 위해 파일의 해당 부분을 찾아갈 때에 유용하다.

> grep filterText test.txt -n

5번째 줄이다.

vi를 켜고 커멘드에 5를 넣으면 바로 그 라인으로 이동한다.

 

ㅁ 제외하고 싶은 문자열

> grep filter test.txt | grep -v etcword

 

ㅁ And 조건 검색

> grep filter test.txt | grep want

 

ㅁ Or 조건 검색

> grep 'filter\|want' test.txt

 or 연산자 = |  는 특수기호이므로 역슬래시를 붙여준다.

 

ㅁ 하위 폴더 검색

>grep -r filter ./

 

ㅁ 폴더에서 문자패턴이 일체하는 모든 파일목록

> grep -lr filter *

 

ㅁ일치한 문자패턴 건수확인

> grep -cr filter *

 

 

ㅁ 옵션을 종합적으로 사용가능

>grep -rn filter ./ -B 5 -A 3

현재 폴더의 하위 폴더까지 검색하여 이전 5줄, 이후 3줄 출력한다.

 

ㅁ 파이프 라인과 연동

프로세스 확인할 때에 주로 사용한다.

>ps -ef | grep java

 

 

ㅁ 검색된 건수 확인

> grep -cr filter *

 

 

그 밖에 알지 못한 좋은 정보는 여기에다 추가해야겠다.

반응형
Comments