EgrepとFgrepの違い

Anonim

Egrep vs Fgrep

Egrepとfgrepはどちらもgrepコマンドの一部です。 Linuxではegrepとfgrepの両方がユーザーコマンドとして使用され、何千もの行のプレーンテキストファイルを簡単に検索できるようにします。どちらのコマンドも、DOSベースのテキスト検索ユーティリティであり、特定のテキストまたは単語の検索ファイル、ディレクトリ、およびディレクトリツリーです。

Grepはegrepとfgrepの両方の基本コマンドです。 "Grep"は "グローバル正規表現プリント"の略です。 Grepは単語や言葉を検索する際に正規表現コマンドをサポートしています。

<! - 1 - >

Egrepはgrepコマンドを拡張したもので、行の文字列とテキストファイル内の複数のパターンを検索するユーザーコマンドです。拡張grepとも呼ばれ、パターン化された引数のうちの1つを検索します。 Egrepは、文書が「拡張式」として特徴づけられている場合に使用されます。 "このコマンドを使用する際には、+、? 、! 、&​​と他の文字と有用なシーケンスは、構文エラーを表示する代わりに結果をもたらします。これは、egrepコマンドがそれらを正規表現の一部として解釈するために発生します。

<! - 2 - >

プラス記号、疑問符、垂直バー、カッコなどの式は、結果を指定するのに役立つ演算子としてよく使用されます。式は検索語または正規表現の後に置かれます。以下では、演算子の機能について説明します。

正規表現と正符号は、1つ以上の正規表現の結果を生成します。

疑問符の前の正規表現は、指定された検索語句の0または1つの一致に一致します。

縦棒は、複数の正規表現または検索語を区切るために使用されます。

かっこは、正規表現を囲み、グループ化するために使用されます。

<! - 3 - >

このコマンド "d"をLinuxでエンコードする場合、 "grep-e"と表示されますか? ? egrep、またはegrep plusを使用して、ファイル内で検索する語句を検索します。含めることができる検索語の数に制限はありません。

一方、fgrepはegrepの拡張です。 Linuxでは、それは "grep-f"と呼ばれ、固定文字列のgrepとも呼ばれます。これはgrepに似ています。通常の、あるいは特殊な式や文字を認識したり解釈したりしないからです。正規表現の拡張機能を理解していないため、検索中にこれらの文字をバイパスします。それは一致する言葉や言葉だけを返します。

Fgrepはドキュメントを固定文字列のリストとして解釈します。検索処理は、Aho-Corasickの文字列一致アルゴリズムを使用しているため、他のコマンドと比較すると非常に高速です。要約:

1。 egrepとfgrepの両方は、ベースのgrepコマンドから派生しています。 "egrep"は "extended grep"を表し、fgrepは "fixed-string grep"を表します。"

2。 egrepコマンドは、ファイルや他の種類のデータリポジトリ内の複数のパターンを検索するために使用され、frgrepは文字列を検索するために使用されます。 3。 "egrep"という用語は一般的に "grep-e"と表現され、 "fgrep"は "grep-f"としてエンコードされます。 "

4。 egrepコマンドでは拡張正規表現を使用できますが、grepはユーザーがコマンドで指定した一致する単語または語句のみを検索します。 frepは、正規表現または拡張正規表現を認識または理解しません。 5。他の検索コマンドと比較して、fgrepの検索プロセスは提供された検索語にのみ関係するので非常に高速です。 6。 egrepコマンドは通常、より進歩的な検索調査や特定の検索リサーチを行うために演算子を使用します。プラス記号と疑問符は、単一の正規表現または検索語を扱います。一方、縦棒と括弧は、反対の機能を持つ複数の正規表現に使用されます。縦棒は、かっこ演算子がそれらをグループ化している間に式を区切ります。