
私はgrep -r
与えられたディレクトリのファイルで文字列の発生回数を探していました。
$ grep -r "string"アプリケーション/アセット/JavaScript > app/assets/javascripts/my_file.js:この行にはひも
しかし、再帰的に検索したい場合はどうすればよいですか?複数のサブディレクトリ私の現在のディレクトリ?私が考えることができる唯一の方法は、grepを2回実行することです。
$ grep -r "string"アプリケーション/アセット/JavaScript > app/assets/javascripts/my_file.js:この行には "ひも」 $ grep -r "string" 仕様/JavaScript >アプリ/アセット/javascripts/my_file.js:"ひも「というメッセージもここに表示されます。
上記の2つのgrep
コマンドを1行にどのように組み合わせることができますか?私はすべてのファイルを検索したくないので、.
その--exclude-dir
下に他のディレクトリが多すぎて.
明示的に除外できないため、これは実用的ではありません。
可能ですか?
答え1
以下で複数のディレクトリを指定できますgrep
。
grep -r "string" app/assets/javascripts spec/javascripts
あるいは、時々、あなたが把握したいファイルをリストし、それを理解することがfind
より役に立つかもしれません。
find app/assets/javascripts spec/javascripts -type f -print0 |
xargs -0 grep "string"
または
find app/assets/javascripts spec/javascripts -type f -exec grep -H "string" {} +