linuxでファイル中の特定の文字列を抽出したい場面が多々あります。
その際にgrepコマンドを使用し、文字列を抽出します。
本記事では、ファイル内の特定の文字列を抽出するgrepコマンドについて詳しく解説していきます。
linux初心者の方やgrepコマンドの使い方を知りたい方はぜひ、参考にしてみてください。
目次
linux grepコマンドとは
linux grepコマンドとは、ファイル内の特定の文字列を抽出するコマンドになります。
例えば、ログファイルでエラーメッセージのみを抽出したい場合に、grepコマンドでerror文字を指定することでerrorメッセージのみを抽出することができます。
ファイルの中には、ログファイルのように多くの文字列が存在するファイルもあるので、調査しやすくするためにgrepコマンドは使用されます。
この後、grepコマンドの使い方について説明していきますので、参考にしてみてください。
linux grepコマンド使い方
grepコマンドの1番シンプルな使い方は、以下のようになります。
例えば、tmpディレクトリ配下のファイルすべてからtestから始まる行を検索した場合には、以下のようになります。
linux grepコマンドオプション
grepコマンドをさらに便利に使うために使用するオプションについて解説していきます。
grepコマンドのオプションを知りたい方は、参考にしてみてください。
コマンド | 説明 |
-i | 大文字・小文字を区別しない |
-E | 拡張正規表現で検索を行う |
-e | 一致処理に指定した正規表現を検索する |
-v | 一致しないものを検索する |
-n | 検索結果に行番号を表示して検索する |
-l | 検索結果にファイル名のみを表示する |
-h | 検索結果にファイル名を表示しない |
-r | ディレクトリ内も検索する |
-L | 検索した結果該当しないファイルを表示する |
-i・・・大文字・小文字を区別しない
-iオプションをつけることで大文字と小文字を区別せずに検索することができます。
例えば、/tmp/testファイルから大文字Tと小文字tを検索したい場合には、以下のようになります。
-E・・・拡張正規表現で検索を行う
-Eオプションをつけることで拡張正規表現を使用することができます。
例えば、tかoの文字列を検索するようなor検索などもすることができます。
/test/tmpのtかoのつく文字を検索した場合には、以下のようになります。
-e・・・一致処理に指定した正規表現を検索する
-eオプションは、一致処理に指定した正規表現を行う時に使うオプションですが、orで使うことが多いです。
/test/tmpのtかoのつく文字を検索した場合には、以下のようになります。
-v・・・一致しないものを検索する
-vオプションは、一致しない文字列を検索する際に使用します。
例えば、/tmp/testファイルでtの文字を含まないものを検索する際には以下のようになります。
-n・・・検索結果に行番号を表示して検索する
-nオプションをつけると検索結果に行番号を表示することができます。
例えば、/tmp/testファイルのtを検索し、行番号を表示したい場合は以下のようになります。
-l・・・検索結果にファイル名のみを表示する
-lオプションをつけると検索結果にファイル名のみを表示することができます。
例えば、/tmpディレクトリ内のtを検索し、検索結果に合致したファイル名のみを表示したい場合は以下のようになります。
-h・・・検索結果にファイル名を表示しない
-hオプションをつけると検索結果にファイル名を表示せず検索することができます。
例えば、/tmpディレクトリ内のファイルのtを検索し、ファイル名を表示したくない場合は以下のようになります。
-r・・・ディレクトリ内も検索する
-rオプションは、ディレクトリ内も検索したい場合に使用します。
例えば、/tmp配下のtの文字を検索したい場合は以下のようになります。
-L・・・検索した結果該当しないファイルを表示する
-Lオプションは、検索した結果該当しないファイルを表示させたい場合に使用します。
例えば、tmpディレクトリ配下のすべてのファイルからtを検索し、該当しないファイルを表示する場合は以下のようになります。
まとめ
いかがでしたか。
本記事では、linuxでファイル内の文字を抽出することのできるgrepコマンドについて解説してきました。
業務の中でログの解析を行う際などにgrepコマンドを使用することがよくあるので覚えておきましょう。
grepコマンドについて詳しく知りたい方やlinux初心者の方はぜひ、参考にしてみてください。
・linux grepコマンドの使い方
・linux grepコマンドオプション