강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

지정한 파일 내에서 특정문자열에 해당하는 문자열 검색하기

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

지정한 파일 내에서 특정문자열에 해당하는 문자열 검색하기





 

 

grep“Globally find Regular-Expression and Print”의 약어이며 지정된 파일내의 특정문자나 단어를 검색하는 명령어로서 파일편집이나 특정문자를 포함한 단어를 찾는데 매우 유용하게 사용됩니다.

 

 

 

 그리고 grep명령어는 지정된 파일 내에서 특정문자가 몇 개나 들어있는가를 확인할 때에도 유용하게 사용되며, 특정문자가 포함된 행 자체를 확인할 때에도 빈번하게 사용됩니다.

 

 

 

 리눅스시스템이 대소문자를 구분하는 것처럼 grep은 기본적으로 대소문자를 구분하여 검색합니다.

 

 

 

 만약 대소문자를 구분하지 않는 검색을 하려면 -i옵션을 사용하면 됩니다.

 

 

 

 

 

또한 압축된 파일 내에서 특정문자나 단어를 검색하는 zgrep도 매우 유용하므로 꼭 알아두시기 바랍니다.

 

 

 

 

 

grep명령어는 기본정규식으로 파일내의 특정문자를 검색할 수 있습니다.

 

 

 

 egrep grep의 확장된 명령어이며 파일내의 특정문자를 확장된 정규식표현으로 검색할 수 있습니다.

 

 

 

 그리고 fgrep은 파일내의 특정문자를 고정된 문자열로만 인식하여 검색합니다.

 

 

 

  따라서 egrep“grep -E”옵션을 사용하는 것과 같으며, fgrep“grep -F”옵션을 사용하는 것과 같습니다.

 

 

 

 

 

참고로 grep은 서버관리자에게 매우 유용하게 사용되는 명령어이므로 이번 장의 마지막 부분에는 필자가 시스템관리시에 사용하는 grep으로 만든 명령어들을 설명하였으므로 참고하시고 실무에 적용하여 파워풀한 시스템관리에 활용하시기 바랍니다.

 

 

 

 grep의 활용 정도에 따라서 중고급이상의 시스템관리자로 레벨 업 하기 위한 관문이 될 수도 있습니다.

 

 

 

 왜냐하면 grip은 쉘프로그램에 종종 사용되기 때문입니다.

 

 

 

 

 

그리고 grep에서는 아래와 같은 정규표현식의 표현식 자체를 이해하는 것이 가장 중요합니다.

 

 

 

 예전 MS-DOS시절에 사용하던 표현식과 비슷하므로 별 어려움 없이 이해할 수 있을 것입니다.

 

 

 

 grep의 사용을 포기하지 않는 한 아래 표현식의 의미를 정확하게 이해하시기 바랍니다.

 

 

 

 

 

        grep에서 사용되는 검색문자패턴 정규표현식

 

        .    : 아무 문자나 한 문자를 의미함.

        *    : 어떤 문자열이나 문자길이에 무관한 문자열을 의미함.

        ^    : 행의 시작 위치를 의미함.

        $    : 행의 마지막 위치를 의미함.

        [ ]  : 한 문자 길이의 패턴리스트

        [^ ] : 지정된 문자들 이외의 문자들을 의미함(^는 여집합을 의미함)

        \    : 뒤에 오는 문자를 문자 그대로인식(특수문자를 그대로 표현할 때 사용함)

        /<   : 단어의 시작 위치를 의미함.

        />   : 단어의 마지막 위치를 의미함.

 

명령어위치 : /bin/grep

 

사용형식

        grep  [옵션]  검색할문자표현식 [파일...]

       grep  [옵션]  [-e 검색할문자표현식 | -f  파일] [파일...]

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,035 명
  • 현재 강좌수 :  35,798 개
  • 현재 접속자 :  128 명