2つの単語を含む行数の計算

2つの単語を含む行数の計算

次のような多くの行を含むテキストファイルがあります。

The quick brown fox jumps over the lazy dog
The quick brown fox did not jumps over the lazy dog
The quick brown fox may jumps over the lazy dog
The quick brown fox may not jumps over the lazy dog
anything can happen
nothing can happen

私は彼らが現れる行で「キツネ」と「ジャンプ」の発生回数を取得したいと思います。

試しましたがgrep -ci "$word1|word2' $file 動作しません

答え1

grep次のようにパイプを接続して、grep2番目のインスタンスのみを計算できますgrep

grep -i fox $file | grep -ci brown

または とegrep同様にgrep -E正規表現を使用できます。

egrep -ci 'fox.*brown|brown.*fox' $file

答え2

echo -e "fox:$(grep -c fox aaa)\njumps:$(grep -c jumps aaa)"

aaa:ファイル名

そしてあなたの命令が間違っています

grep -ci "fox\|jumpsa" aaa

関連情報