Grep 명령 : 터미널에서 텍스트를 찾는 강력한 도구

Grep 명령

컴퓨터를 가지고 있거나 컴퓨터로 작업하는 거의 모든 사람은 키보드 단축키 Ctrl + F를 알고 텍스트를 찾을 수 있습니다. "F"는 영어로 "찾기", "찾기"를 의미하며 예를 들어 웹 페이지에서 텍스트를 찾는 데 사용할 수 있습니다. 이 바로 가기는 많은 응용 프로그램에서도 사용할 수 있습니다. "검색에"B "를 사용하는 프로그램이 있지만 이러한 바로 가기는 응용 프로그램 내부에 있고 파일이 열려있는 경우에만 작동합니다. Linux에는 터미널에서 실행할 수있는 매우 강력한 도구가 있습니다. 우리 팀에있는 텍스트를 찾으면 다음 명령을 사용합니다. GREP.

GREP 우리가 나타내는 파일 내에서 텍스트를 찾는 데 도움이되는 명령입니다. 그 이름은 유닉스 / 리눅스 텍스트 편집기에서 비슷한 것을 위해 작동하는 명령 인 g / re / p에서 유래되었습니다. 다른 많은 명령과 마찬가지로 GREP 많이있다 편지 형태로 추가 할 사용 가능한 옵션 각각 다른 작업을 수행합니다. 이러한 옵션을 결합하면 하나 이상의 파일에서 복잡한 검색을 수행 할 수 있습니다. 여기서 우리는 당신이 알아야 할 모든 것을 보여줍니다.

GREP 모든 파일에서 텍스트를 찾을 수 있습니다.

먼저 사용 가능한 옵션에 대해 설명합니다.

  • -i: 대문자와 소문자를 구분하지 않습니다.
  • -w: 특정 단어 만 찾도록 강제합니다.
  • -v: 일치하지 않는 라인을 선택합니다.
  • -n: 요청한 단어가있는 줄 번호를 표시합니다.
  • -h: 출력의 Unix 파일 이름에서 접두사를 제거합니다.
  • -r: 디렉토리를 재귀 적으로 검색합니다.
  • -R: -r과 비슷하지만 모든 심볼릭 링크를 따릅니다.
  • -l: 선택한 줄의 파일 이름 만 표시합니다.
  • -c-선택한 라인의 파일 당 하나의 개수 만 표시합니다.
  • -색깔: 일치하는 패턴을 색상으로 표시합니다.

이 기사의 제목이있는 이미지에서 해당 경로에있는 "830.desktop"파일에서 "Images"라는 단어를 찾았습니다. 보시다시피 저는 다음과 같이 썼습니다.

grep Imágenes /home/pablinux/Documentos/830.desktop

이 기사에서는 검색 기본 설정에 따라 수정해야하는 예제를 작성합니다. "File", "Word"등을 말할 때 우리는 경로와 함께 파일을 참조합니다.. "grep Images 830.desktop"을 방금 작성했다면 파일이 존재하지 않는다는 메시지를 받았을 것입니다. 또는 파일이 루트 디렉토리에 있지 않으면 그렇게 될 것입니다.

다른 예는 다음과 같습니다.

  • grep -i 이미지 /home/pablinux/Documentos/830.desktop여기서 "이미지"는 우리가 찾고자하는 단어이고 나머지는 경로와 함께 파일입니다. 이 예에서는 대소 문자를 구분하지 않고 "830.desktop"파일에서 "images"를 검색합니다.
  • grep -R 이미지: 디렉토리의 모든 행과 "이미지"라는 단어가있는 모든 하위 디렉토리를 검색합니다.
  • grep -c 예제 test.txt: 이것은 우리를 찾고 "test.txt"라는 파일에 "example"이 나타나는 총 횟수를 보여줍니다.

grep 사용 우리는 또한 파일을 검색 할 수 있습니다

830.desktop 파일을 찾으려면 다음 명령을 작성합니다.

grep 830.desktop

이것은 개인 폴더에서«830.desktop»파일을 검색합니다.즉, 파일이 다른 사용자의 개인 폴더에 있으면 해당 파일을 찾을 수 없습니다. 이것은 사용자가 암호없이 다른 사람의 콘텐츠에 액세스 할 수있는 권한이 없기 때문에 세상에서 가장 일반적인 것입니다.

재귀 검색을 수행하는 방법

GREP 그것은 또한 우리를 허용합니다 반복되는 규칙 또는 지침에 따라 검색 수행. 예를 들어, "Pablinux"라는 단어가 포함 된 각 디렉토리의 모든 파일을 읽으십시오. 이를 위해 다음과 같이 작성합니다.

grep -r Pablinux /home/

오 잘 :

grep -R Pablinux /home/

"Pablinux"에 대한 결과는 발견 된 파일의 이름이 앞에 오는 별도의 줄에 표시됩니다. 데이터 출력에서 ​​파일 이름을 보지 않으려면 -h 옵션 (from "hide"; hide)을 사용합니다.

grep -h -R Pablinux /home/

옵션을 함께 결합하고 따옴표없이 "-hR"을 작성할 수 있습니다.

정확한 단어 검색을 수행하는 방법

때때로 우리가 다른 것을 찾고자하는 것을 포함하는 파일이 있습니다. 예를 들어, 이것은 복합어로 우리에게 발생할 수 있으며 "숲"을 검색하여 "레인저"를 찾을 수 있습니다. 우리가 원한다면 정확한 단어 찾기 -w 옵션을 사용합니다 :

grep -w bosques /home/pablinux/Documentos/vacaciones.txt

위의 명령은 표시된 경로의 "holidays.txt"파일에서 레인저를 무시하고 "forests"를 검색합니다. 두 개의 다른 단어를 검색하려면 다음 명령을 사용합니다. 이그렙:

egrep -w bosques|plantas /ruta/del/archivo

파일에 단어가 몇 번 나타나는지 확인

GREP 그것은 또한 할 수 있습니다 단어가 몇 번 나오는지 세어 봐 파일에서. 이를 위해 -c 옵션을 사용합니다.

grep -c prueba /ruta/al/archivo

-n 옵션을 추가하면 단어가 나타나는 줄의 번호가 표시됩니다.

역방향 조회

반대로 할 수도 있습니다. 단어가 포함되지 않은 줄 검색. 이를 위해 다음과 같은 -v 옵션을 사용합니다.

grep -v la ruta/al/archivo

위의 명령은 "the"라는 단어가 포함되지 않은 모든 줄을 표시합니다. 이것은 단어가 여러 번 반복되고 어떤 이유로 나머지 줄에 액세스해야하는 문서 또는 목록에서 유용 할 수 있습니다.

시스템 정보에 액세스 GREP

PC 모델

GREP 파일 내에서만 검색 할 수있는 것은 아닙니다. 그것은 또한 시스템 정보를 볼 수 있음. 이전 스크린 샷에서 우리가 가지고있는 PC 모델을 어떻게 보여 주는지 확인할 수 있습니다 (세계에서 가장 강력한 노트북이 아니라는 것을 알고 있습니다). 이를 위해 다음 명령을 사용했습니다.

cat /proc/cpuinfo | grep -i 'Model'

오 잘 :

grep -i 'Model' /proc/cpuinfo

우리가 원하는 것이 디스크 장치의 이름을 보는 것이라면 다음과 같이 작성할 것입니다.

dmesg | egrep '(s|h)d[a-z]'

일치하는 파일 이름 만 나열하는 방법

검색과 일치하는 파일 이름 만 포함 된 목록을 보려면 아래와 같이 -l 옵션을 사용합니다.

grep -l 'main' *.c

색상으로 단어를보고 싶다면 다음과 같이 작성합니다.

grep --color palabra /ruta/al/archivo

보시다시피 명령은 GREP매우 강력한 도구 특히 우리가 무언가를 작성했거나 프로그래밍에서 어디에 있는지 기억하지 못하는 경우 그만한 가치가 있습니다. 또한 터미널 애호가가 좋아할 방식으로 시스템에 대한 정보를 찾는 데 도움이됩니다. 텍스트 찾기 명령에 대한이 가이드가 유용 했습니까? GREP?


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   노르 드리

    안녕하세요!
    Grep이 파일 검색에도 사용된다고 말하면 grep EXPRESSION을 실행하고 파일을 전달하지 않으면 표준 입력에서 데이터 입력을 기다리기 때문에 정확하지 않다고 생각합니다.
    매뉴얼 페이지에 따르면 :
    grep은 지정된 PATTERN과 일치하는 행을 포함하는 행에 대해 명명 된 입력 FILE을 검색합니다. 파일이 지정되지 않았거나 파일 "-"가 제공되면 grep은 표준 입력을 검색합니다.
    그렇기 때문에이 명령의 출력을 grep에 입력으로 전달하여 / proc / cpuinfo의 출력을 구문 분석하는 파이프 라인에서 사용할 수 있습니다. 검색을 수행 할 수 있습니다.
    인사

  2.   어록

    아주 좋은 게시물입니다.
    당신은 그것을 아주 잘 설명하고 바로 그 요점으로 이동합니다.