Linux システムの grep コマンドは、強力なテキスト検索ツールです。正規表現を使用してテキストを検索し、一致する行を出力できます。その使用構文は、「grep [オプション] パターン [ファイル] 」です。
#この記事の動作環境: linux5.9.8 システム、Dell G3 コンピューター。
Linux grep コマンド
Linux grep コマンドは、ファイル内の修飾文字列を検索するために使用されます。また、指定されたテンプレート スタイルを含むファイルを検索するためにも使用できます。正規表現検索を使用して、ファイル内で指定された文字列パターンを検索し、パターンに一致する部分文字列を含むファイル名をリストし、その文字列を含むテキスト行を出力できます。
grep は次のように機能します。1 つ以上のファイルで文字列テンプレートを検索します。テンプレートにスペースが含まれる場合は引用符で囲む必要があり、テンプレートに続くすべての文字列はファイル名として扱われます。検索結果は、元のファイルの内容に影響を与えることなく、標準出力に送信されます。
基本構文:
grep [options] pattern [files]
[オプション] の主なパラメータ:
-a または --text: 使用しないでください。バイナリデータを無視します。
-A<行数を表示> または --after-context=<行数を表示> : テンプレート スタイルに準拠した列を表示することに加えて、行の後にコンテンツを表示します。
-b または --byte-offset: スタイルに一致する行を表示する前に、行の最初の文字の番号をマークします。
-B<行数表示> または --before-context=<行数表示> : スタイルに一致する行を表示するだけでなく、その行より前の内容も表示します。
-c または --count : スタイルに一致する列の数をカウントします。
-C<表示行数> または --context=<表示行数> または -<表示行数> : スタイルに一致する行を表示することに加えて、これを表示しますline コンテンツの前後。
-d
-e または --regexp= : ファイルの内容を検索するためのスタイルとして文字列を指定します。
-E または --extended-regexp : 拡張された通常の表記法としてスタイルを使用します。
-f<ルール ファイル> または --file=<ルール ファイル> : コンテンツに 1 つ以上のルール パターンが含まれるルール ファイルを指定すると、grep がルール条件を満たすファイルのコンテンツと形式を検索できるようになります。各行に 1 つのルール スタイル。
-F または --fixed-regexp : スタイルを固定文字列のリストとして扱います。
-G または --basic-regexp : スタイルを通常の表記法として扱います。
-h または --no-filename: スタイルに一致する行を表示する前に、その行が属するファイル名を指定しません。
-H または --with-filename: スタイルに一致する行を表示する前に、その行が属するファイル名を示します。
-i または --ignore-case: 大文字と小文字の違いを無視します。
-l または --file-with-matches: ファイルの内容が指定されたパターンと一致するファイル名をリストします。
-L または --files-without-match: 内容が指定されたスタイルと一致しないファイル名をリストします。
-n または --line-number: スタイルに一致する行を表示する前に、その行の列番号を指定します。
-o または --only-matching: 一致する PATTERN 部分のみを表示します。
-q または --quint または --silent: 情報を表示しません。
-r または --recursive: このパラメータの効果は、「-d recurse」パラメータを指定した場合と同じです。
-s または --no-messages: エラー メッセージを表示しません。
-v または --revert-match : 一致するテキストを含まないすべての行を表示します。
-V または --version : バージョン情報を表示します。
-w または --word-regexp: 単語全体に一致する列のみを表示します。
-x --line-regexp: すべての列に一致する列のみを表示します。
-y: このパラメータの効果は、「-i」パラメータを指定した場合と同じです。
-?: 上下の一致ラインを同時に表示しますか?次のような行: grep -2 pattern filename は、一致する行の上位行と下位行を同時に表示します。
pattern 正規表現の主なパラメータ:
\: 正規表現内の特殊文字の本来の意味を無視します。
#^: 正規表現の開始行と一致します。 $: 正規表現の終了行と一致します。 \<:正規表現に一致する行から開始します。 \>:正規表現に一致する行の末尾へ。 []: [A] などの 1 文字は、A が要件を満たしていることを意味します。 [ - ]: [A-Z] などの範囲、つまり A、B、C ~ Z はすべて要件を満たします。 .: すべて単一の文字。##: 文字があり、長さは 0 にすることができます。
コード例:
例 1:現在のディレクトリで、先頭に「test」という単語が付いているファイルを検索します。 "test" 文字列を含むファイルを作成し、その文字列の行を出力します。この時点で、次のコマンドを使用できます: grep test test*
testfile1:This a Linux testfile! #列出testfile1 文件中包含test字符的行 testfile_2:This is a linux testfile! #列出testfile_2 文件中包含test字符的行 testfile_2:Linux test #列出testfile_2 文件中包含test字符的行
逆検索では、「-v」パラメータを使用して、条件を満たさない行の内容を出力できます。ファイル名に test grep -v test *test*
testfile1:helLinux! testfile1:Linis a free Unix-type operating system. testfile1:Lin testfile_1:HELLO LINUX! testfile_1:LINUX IS A FREE UNIX-TYPE OPTERATING SYSTEM. testfile_1:THIS IS A LINUX TESTFILE! testfile_2:HELLO LINUX! testfile_2:Linux is a free unix-type opterating system.
相关linux视频教程推荐:《linux语言教程》
以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注php中文网相关教程栏目!!!
以上がLinuxでgrepコマンドを使用するにはどうすればよいですか? (詳しい説明)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。