Egrep과 Fgrep의 차이점

Anonim

Egrep vs Fgrep

Egrep과 fgrep은 모두 grep 계열의 명령입니다. egrep과 fgrep 모두 Linux에서 사용자 명령으로 사용되어 수천 줄의 일반 텍스트 파일을 쉽게 검색 할 수 있습니다. 두 명령 모두 특정 텍스트 또는 단어에 대한 DOS 기반 텍스트 검색 유틸리티 및 검색 파일, 디렉토리 및 디렉토리 트리입니다.

Grep는 egrep과 fgrep 모두에 대한 기본 명령입니다. "Grep"는 "전역 정규 표현식 인쇄"를 의미합니다. "Grep은 단어와 용어를 검색 할 때 정규 표현식 명령을 지원합니다.

Egrep은 grep 명령을 확장 한 것으로, 줄의 문자 스트링과 텍스트 파일의 여러 패턴을 검색하는 사용자 명령입니다. 확장 grep이라고도 알려져 있으며, 패턴 화 된 인수 중 하나를 찾습니다. Egrep은 문서가 "확장 표현식"으로 특성화 될 때 사용됩니다. "이 명령을 사용할 때 +,?,!, &와 다른 문자 및 유용한 시퀀스는 구문 오류를 표시하는 대신 결과를 산출합니다. 이것은 egrep 명령이 정규 표현식의 일부로 해석하기 때문에 발생합니다.

더하기 기호, 물음표, 세로 막대 및 괄호와 같은 표현식은 결과를 지정하는 데 도움이되는 연산자로 사용되는 경우가 많습니다. 표현식은 검색어 또는 정규 표현식 뒤에 위치합니다. 다음은 연산자의 기능을 설명합니다.

정규식 및 더하기 기호는 하나 이상의 정규식 결과를 생성합니다.

물음표 앞의 정규 표현식은 주어진 검색어의 0 또는 하나의 일치 항목과 일치합니다.

수직 막대는 여러 개의 정규 표현식이나 검색어를 구분하는 데 사용됩니다.

괄호는 정규식 또는 단어를 묶고 그룹화하는 데 사용됩니다.

리눅스에서이 명령 "d"를 인코딩 할 때 "grep-e"로 표현됩니까? ? egrep 또는 egrep plus를 사용하여 파일 내에서 검색 할 단어 또는 용어를 찾습니다. 포함될 수있는 검색 단어의 수에는 제한이 없습니다.

한편, fgrep은 egrep의 확장입니다. Linux에서는 "grep-f"로 표시되며 고정 문자열 grep이라고도합니다. 일반 또는 특수 표현식이나 문자를 인식하거나 해석하지 않으므로 grep과 유사합니다. 정규 표현식의 확장 된 기능을 이해하지 못하므로 검색 중에 이러한 문자를 무시합니다. 일치하는 단어와 단어 만 반환합니다.

Fgrep은 문서를 고정 문자열 목록으로 해석합니다. 검색 프로세스는 Aho-Corasick 문자열 일치 알고리즘을 사용하기 때문에 다른 명령과 비교하여 매우 빠릅니다.

요약:

1. egrep 및 fgrep은 모두 기본 grep 명령에서 파생됩니다. "egrep"은 "확장 grep"을 나타내고 fgrep은 "fixed-string grep"을 나타냅니다."

2. egrep 명령은 파일 또는 다른 종류의 데이터 저장소에서 여러 패턴을 검색하는 데 사용되는 반면 frgrep은 문자열을 찾는 데 사용됩니다. 3. "egrep"이라는 용어는 일반적으로 "grep-e"로 표현되는 반면 "fgrep"은 "grep-f"로 인코딩됩니다. "

4. egrep 명령은 확장 정규 표현식을 허용하지만 grep은 사용자가 명령에서 지정한 단어 나 용어와 일치하는 단어 만 검색합니다. frep는 정규 또는 확장 정규 표현을 인식하거나 이해하지 못합니다. 5. 다른 검색 명령과 비교할 때 fgrep에 대한 검색 프로세스는 제공된 검색 단어에만 관련되기 때문에 매우 빠릅니다. 6. egrep 명령은 대개 점진적 또는 특정 검색 연구를 수행하기 위해 연산자를 사용합니다. 더하기 기호와 물음표는 단일, 정규식 또는 검색 용어를 처리합니다. 반면 수직 막대와 괄호는 반대 함수가있는 여러 개의 정규 표현식에 사용됩니다. 수직 막대는 괄호 연산자가 그룹화하는 동안 식을 분리합니다.