回答:
のGNU実装ではgrep
、そのための-h
/ --no-filename
オプションがあります。
$ grep -rc PATTERN .
./b:1
./a:0
./1/2/c:2
$ grep -rhc PATTERN .
1
0
2
ポータブル/標準に相当するものは次のとおりです。
$ find . -type f -exec grep -c PATTERN {} \;
0
2
1
しかし、grep
ファイルごとに1 つの呼び出しを実行することを意味します。
代わりに、オカレンスの総数(ここでは1 + 2 = 3)が必要な場合は、次のようにできます(移植可能)。
$ find . -type f -exec cat {} + | grep -c PATTERN
3
(ファイルの最後の行の後にデータがある場合(つまり、非テキストファイル)、結果が混乱する可能性があることに注意してください)
または、あなたのようなgrep
サポートで-r
:
$ grep -r PATTERN . | wc -l
3