Subscribed unsubscribe Subscribe Subscribe

# 再帰的にとってこれなくなる dir/busamen.rb も dir/dokokano/ikemen.rb もgrepしたい。
$ find dir -name *.rb | xargs grep unko
# grepしたいファイルタイプ以外も取ってきて不便
$ find dir -type f | xargs grep unko
# 幸福 -> あ、これだと空白込のファイル名の時アレ...
$ find dir -type f | grep .rb$ | xargs grep unko
# これだと, grep .rb$ できなくなる(区切りがnull文字となるので)
$ find dir -type f -print0 | grep .rb$ | xargs -0 grep unko
# これで幸福なのではないか
$ find dir -type f | grep .php$ | tr '\012' '\000' | xargs -0 grep unko

そんなことしなくてもfindだけで出来る的なのある気がする。 最近開発用のマシンにはack(ack-grep)入れるからあんま使うことないんだけど。