findとgrepでファイル検索 ひとりぷちアドベントカレンダー2017 13日目
いつも何気なく使っているコマンドも、たまにはメモしておこうかなと。ということで検索コマンドです。
いつもの検索
だいたいこれを使っています。細かいオプションあんまり覚えていないだけともいう。
find "開始ディレクトリ" -type f -name "*.拡張子" -exec grep --color -n "検索文字" {} +
-exec
find
にかかった物に対してコマンドを実行する仕組みです。
引数-exec
から、引数+
までの間に書いた物をコマンドとして実行してくれます。
このなかの{}
という文字列はfind
でかかったファイル名に置換えてくれます。
先ほどのコマンドの場合は、次のようになります。
grep --color -n "検索文字" "ファイル名"
初めて見た時はどんな暗号なのかと思いましたが、分かってみると案外シンプルです。
引数の分割等細かい部分は面倒を見てくれるのでありがたいコマンドです。
grep
の代わりにchmod
に使う事で、ファイルだけ変更もできます。
終わりに
ねたがない。