質問: ``` find . -name '*.php' -print0 | xargs -0 grep hoge ``` ・上記コマンドを実行したら、.phpの名前がディレクトリが付いている箇所で下記表示となりました > > /xxxx/packer.php: ディレクトリです > > > ・ディレクトリは検索できないのですか? 渡せない?? --- phpファイルだけを検索したい場合は、明示的にファイル指定した方が良いですか? ・この方が早く検索できますか? ``` find . -type f -name '*.php' -print0 | xargs -0 grep hoge ```
回答: > > ・ディレクトリは検索できないのですか? 渡せない?? > > > `grep` はテキストの中からキーワード(今回は hoge )を検索するプログラムですのでディレクトリを検索することはできません。 > > ・この方が早く検索できますか? > > > 殆ど変わらないでしょうが、多少は早くなる気がします。 ただ、最初の質問のエラーを回避できるので `-type f` を付けたほうが良さそうに思います。