ディレクトリ構造を再帰的に検索するときに、grepがいくつのパターンインスタンスを見つけたかどうかを知りたいです。行数を計算できることでgrepの出力をパイプできるはずです。
答え1
助けを借りて回答を整理することができました。この問題。 「wc」プログラムは、改行、単語、バイト数を計算します。 「-l」オプションは、必要な行数を指定します。私のアプリケーションでは、次の方法を使用して「somePattern」インスタンスの数を計算できます。
$grep -r "somePattern" filename | wc -l
答え2
少なくともGNUツールの場合:
grep -rcZ "some_pattern" | awk -F'\0' '{s+=$NF}END{print s}'
に比べて速度が速くなることがありますwc -l
。
名前に改行文字を含むファイルでも機能します。