pgrep&egrep
Linuxにおいてgrepコマンドは基本中の基本。
なのでここでは割愛させてもらうとして、ちょっとした応用編のpgrepとegrepについて書いておく。
[pgrep]
pgrepは、指定したパターンを含むプロセスのPIDのみ表示する。
例えば、mysqlを含むプロセスのPIDとプロセス名を表示するには以下のコマンドを実行する。
$ pgrep –l mysql
代表的なオプションには以下のようなものがある。
-x パターンに正確に一致するPIDのみ表示
-n パターンを含むプロセスのうち、最新のプロセスのPIDのみ表示
-u user name 特定のユーザによって所有されているプロセスのPIDのみ表示
-l PIDとプロセス名を表示
-f コマンド行の引数も合わせて表示
実は普段自分はpgrepを使うことはまずなかったのだが、今これを書いていて、使ってみよう!と思った。
[egrep]
egrep は、複数のパターンを検索対象とする (grep –e と同じ)。
検索したい文字列をダブルもしくはシングルクォーテーションで囲み、パイプ記号で区切りをつける。
便利なコマンドではあるのだが、しばらく使っていないとすぐ書式を忘れてしまうので、書いておこう〜、と。
書式:egrp ‘文字列|文字列|文字列’ 対象ファイル
$ egrep ‘aaa|bbb|ccc’ /var/log/httpd/access_log
以下でも出力結果は同じ。お好きな方をどうぞ。
$ grep -e aaa -e bbb -e ccc /var/log/httpd/access_log
ちなみにpgrepはOSによってはサポートされていないよう。
(自分の知る限り、SolarisはOK、MacはNO)
Linux関連記事一覧はこちらをどうぞ
↓ ↓ ↓
Linux-index