grep |
作成日:2010-06-13 最終更新日: |
grep は単独ではもちろん、他のコマンドとの合わせ技でさらに力を発揮する。
xargs, find コマンドと合わせて、 あるディレクトリからサブディレクトリを渡り歩いてすべての html ファイルをみつけ、 その中から特定の単語があるかを調べる、というときに使える。
$ find . -name \*html -print | xargs grep "hogehoge"
実例1では grep をパイプの後段で渡していたが、パイプの前段で使う例を挙げる。 "hogehoge"が含まれていないファイルにそれぞれに関して、wc を行う。
$ grep -L "hogehoge" *.html | xargs wc
grep の -L オプションは、 hogehoge が出てこないファイルを一覧表示する、 という意味である。
Windows では、 GNU utilities for Win32 がある。なお残念ながらNT 版 UNIX-like toolsでは、 いくつか実装されていないオプションがある (egrep における -L など)。