SOでこれを見つけることができませんでした。ターミナルで次のコマンドを実行しました。
>> grep -Rl "curl" ./
これにより、キーワードcurlが発生するファイルのリストが表示されます。ファイル数を数えたいのですが。私が考えることができる最初の方法は、ターミナルに入ってきた出力の行数を数えることです。どうやってやるの?
SOでこれを見つけることができませんでした。ターミナルで次のコマンドを実行しました。
>> grep -Rl "curl" ./
これにより、キーワードcurlが発生するファイルのリストが表示されます。ファイル数を数えたいのですが。私が考えることができる最初の方法は、ターミナルに入ってきた出力の行数を数えることです。どうやってやるの?
回答:
(line count)スイッチをwc
使用して結果をパイプします。-l
grep -Rl "curl" ./ | wc -l
grep "" -c
、これはかなり良いものです:)
grep -c
、出力を別のプログラムにパイプする代わりに、組み込み関数を使用する必要があります。たとえば、Word文書の文字をWord以外のテキストエディタで変更しないこともできますか。
最後の行が改行で終わっている場合( 'wc'へのパイピングは、最後の行が改行で終わっている場合によくわかります(
ただし、この場合はそうなります)。ただし、最後の行が改行で終わっていない場合、 'wc -l'は誤った結果を返します。
例えば:
$ echo "asd" | wc -l
戻ります1
と、
$ echo -n "asd" | wc -l
戻ります 0
だから私がよく使うのは grep <anything> -c
$ echo "asd" | grep "^.*$" -c
1
$ echo -n "asd" | grep "^.*$" -c
1
これは何wc -l
が戻るかより現実に近いです。
-c
、カウントを返すだけのフラグがあります