ぬるぶろ

更新日:2016-05-16

「find」と「xargs」と「grep」で大量ファイルを拡張子絞り込みで検索する方法

いつも使うコマンドが検索で出てこない

phpとtemplateとcssとjsが複雑に絡み合っている場合とか

複数の拡張子にまたがって検索かけたいのに

クライアントソフトだと設定出来ない事が多いです。

(最近のエディターのAtomとかSublimeText2とかはそういう拡張もあるんでしょうけど・・・)

そんなわけでCLIでfindとgrepと組み合わせて検索かけるのですが

長いコマンドだからちゃんと覚えていなかったりとかして。。。

仕組さえわかればたいした話ではないんですけどね。

結論は以下の通り

find . \( -name "*.php" -o -name "*.tpl" -o -name "*.js" -o -name "*.css" \) | xargs grep "hoge"

ファイル名だけ欲しい場合はgrepに-lオプション

除外を行いたい場合はパイプで繋いで

除外したい文言をgrepの-Vオプションで指定してあげれば

サクサク検索できます。

完全に個人的な覚書用です。

本当にありがとうございます。

ブログ一覧

{{ list.title }} {{ list.blogtype }} {{ list.date }}