私は2つの連続したeと2つのy(存在する場合)を含む単語のセットを見つけようとしています。しかし、これまで私は次のコマンドを試しました。
grep -e '[y&y].*[ee]' -e '[y&y].*[ee]' words2.txt
grep -e 'y.y' -e 'ee' words2.txt
grep -X '.*[y.y].*&.*[ee].*' words2.txt
grep -X '.[*y.y].*&.[*ee].*' words2.txt
これらのコマンドのいくつかは、2つのyまたは2つの連続したeを提供しますが、2つの条件のうちの1つを含む単語は提供しません。今どうすればいいですか?
ベストアンサー1
あなたのファイルが次のようになるとします。
beeyy yeey open iee eey yeefy
funny reenydy jyyee
words2.txt
はい、内容は少しランダムです。これにより、連続した文字ee
と2つの文字を含むy
単語のセットが表示されます。
< words2.txt tr ' ' '\n' | grep 'ee' | grep 'y.*y'
これにより、最初に各単語が1行にあることを確認し、tr
sgrep
は2つの連続した単語を表し、e
再びgrep
sは2つの(非連続的な)単語を表しますy
。それぞれがフィルタなので、最終結果はgrep
ContinuousとTwoを含む単語のセットです。ee
y
私の入力によると、結果は次のようになります。
beeyy
yeey
yeefy
reenydy
jyyee