[Linux] 리눅스 grep 명령어 사용법

hwwwa·2023년 1월 27일

grep 명령어

grep [옵션] [패턴] [파일명]
  • 특정 파일에서 지정한 문자열이나 정규표현식을 포함한 행을 출력해주는 명령어
  • pipe(|)를 사용해 다른 명령어와 함께 사용하는 경우가 많음

grep의 종류

명령어설명정규표현식 가능 여부
grep다중 패턴 검색O
egrep정규 표현식 패턴 검색O
fgrep문자열 패턴 검색X

grep 옵션

옵션설명
-c일치하는 행의 수 출력
-i대소문자 구분 X
-v일치하지 않는 행만 출력
-n포함된 행의 번호를 함께 출력
-l패턴이 포함된 파일의 이름 출력
-w단어와 일치하는 행만 출력
-x라인과 일치하는 행만 출력
-r하위 디렉토리를 포함한 모든 파일에서 검색
-m 숫자최대로 표시될 수 있는 결과 제한
-E패턴을 정규표현식으로 찾기
-F패턴을 문자열로 찾기

문자열로 찾기

  • 특정 파일에서 지정한 문자열이 있는 행 찾기
    grep '문자열' 파일명
    • 여러 파일 지정 가능

정규표현식으로 찾기

  • 특정 파일에서 'a'로 시작하는 모든 단어 찾기

    grep 'a*' 파일명
  • 특정 파일에서 a,b,c로 시작하는 단어를 모두 찾기

    grep [a-c] 파일명
  • 특정 파일에서 abc 또는 Abc로 시작하는 단어 모두 찾기

    grep [aA]bc 파일명
  • 특정 파일에서 a나 b로 시작되는 모든 행 찾기

    grep '^[ab]' 파일명
  • 특정 파일에서 ab로 시작되고 0~9의 숫자로 끝나는 모든 행 찾기

    grep 'ab'[0-9] 파일명

응용

  • grep 결과를 txt 파일로 저장

    grep -n 'abc' original.txt > result.txt
  • 여러 문자열을 모두 포함하는 행 찾기

    cat original.txt | grep 'aa' | 'bb'
  • 실시간 로그에서 원하는 결과 보기

    tail -f mylog.log | grep 'aaa'

0개의 댓글