grep
を使用して特定のテキストを検索する方法 Linux で。 grep
Global Regular Expression Print の短縮形です。ファイルを再帰的に、または単一のファイルで特定の文字列を検索するには、Linux で最も便利なツールの 1 つです。
このガイドでは、grep
の使い方を学びます。 Linux マシンでのさまざまな使用例に対応するコマンドです。
ユースケース
<オール>grep コマンドの構文
grep [OPTIONS] STRING [FILE(S)]
オプション オプションであり、検索を実行するためのさまざまなメソッドが含まれています。
STRING 検索する特定の文字列を使用する必要があります。
ファイル ファイルまたはディレクトリを追加して検索を実行するか、または .
だけを追加できます 現在のディレクトリを検索します。
デフォルトでは、grep は大文字と小文字を区別します。大文字と小文字を区別したくない場合は、 -i
を使用できます 大文字と小文字を区別せず、小文字と大文字を含むコンテンツを出力するオプション。
ファイル内の通常の検索
これは grep コマンドの最も基本的な使い方です。検索する文字列とファイル名を指定してコマンドを使用するだけです。
grep string filename
このコマンドは、指定されたファイル内で指定されたテキストを検索し、結果を出力します。
ディレクトリを含む再帰検索
ディレクトリ内にあるすべてのファイルを検索するには、 -r
を使用する必要があります 指定されたフォルダ内で再帰検索を実行するオプション。
-r
オプションは、シンボリック リンクをたどりません。シンボリック リンクを検索する場合は、大文字の -R
を使用する必要があります 小さい -r
の代わりにオプション オプション。
grep -r string folder-name #Include Symbolic link files grep -R string folder-name
grep の使用中にファイルを除外する
--exclude
を使用できます ディレクトリ、特定のファイル、または特定の拡張子を持つファイルを除外するオプション。
grep -r string --exclude=filename --exclude=*.png --exclude=folder/* folder-name
grep の使用中にファイルを含める
--include
を使用できます 特定のディレクトリ、特定のファイル、または特定の拡張子を持つファイルのみを含めるオプション。
grep -r string --include=filename --include=*.php --include=folder/* folder-name
正規表現検索
^
を使用 (キャレット) 行頭の式に一致する記号。次の例では、テキスト string
行の先頭にある場合にのみ一致します。
grep "^string" filename
$
を使用 行末の式に一致する (ドル) 記号。次の例では、テキスト string
行の最後にある場合にのみ一致します。
grep "string$" filename
.
を使用 (ピリオド) 記号を使用して、任意の 1 文字に一致させます。たとえば、string1
で始まるものと一致させるには 次に 2 文字で、テキスト string2
で終わります 、次のパターンを使用できます。
grep "string1..string2" filename
[ ]
を使用 (角かっこ) で囲まれた任意の 1 文字に一致します。たとえば、boat
を含む行を見つけます。 または「coat
、次のパターンを使用できます。
grep "[bc]oat" filename
次の文字の特別な意味をエスケープするには、\
を使用します (バックスラッシュ) 記号。
他のコマンドで grep を使用する
また、grep を使用して、別のコマンドを使用して提供される出力をフィルタリングすることもできます。
ps -ef | grep mysql | grep -v grep
これにより、出力が除外され、mysql
のものだけが表示されます .
結論
これで、Linux マシンでさまざまな方法で grep コマンドを使用して検索を実行する方法を学習しました。
御時間ありがとうございます。問題やフィードバックに直面した場合は、下にコメントを残してください。