【 ファイルから文字列を検索する 】:ITpro

例1: 現在のフォルダ以下にあるPHPファイルから、MyPrentClassを継承しているファイルを探し、さらにSmartyテンプレートの場所を探す。
$ grep -rHl "extends MyPrentClass" ./*.php | xargs grep -nH "\.tpl"

例2: 現在のフォルダ以下から、ディレクトリ名".svn"を除外して、MyTestClassを検索する。
$ find . -type d -name .svn -prune -o -name \*.php -print | xargs grep -nHi "class MyTestClass"

例3: 現在のフォルダ以下から、ディレクトリ名".svn"を除外して、phpを検索し、ファイル名に2008を含むファイルをZIPする。
$ tar -czvf test_gz_file.gz `find . -type d -name .svn -prune -o -name '*.php' -print | grep '2008'`


例4: ログフォルダから過去一日以内に修正されかつエラーを探す。
$ find /var/log/ -type f -mtime -1 -print | xargs grep -rn -P '(2009(/|-)05(/|-)11|11(/|-)May(/|-)2009)' -A 5 | grep -P '(ERR|SEVERE|WARN|Exception)' -A 3 | more

find ./ -name "*tar.gz" | xargs -n1 tar xzvf