たとえば、テキストファイルの文字列「abcabc」を一致させたい場合、2つ(および2つだけ)の「abc」が一緒に添付され、「abcabc」の前後に文字はありませんか?
grep -n'(abc){2}' TESTを使用すると、機能しません
たとえば、テキストファイルの文字列「abcabc」を一致させたい場合、2つ(および2つだけ)の「abc」が一緒に添付され、「abcabc」の前後に文字はありませんか?
grep -n'(abc){2}' TESTを使用すると、機能しません
括弧をエスケープします。
grep -n '\(abc\)\{2\}' TEST
abcabc
説明が示唆しているように、行の文字列だけを一致させたい場合は、次を使用します。
grep -n '^\(abc\)\{2\}$' TEST
これが最短の選択肢です。
^abcabc$
試す:
egrep '\b(abc){2}\b' input
これが適合することを確認してください。
$ grep '\<abcabc\>'
test
abcabc
abcabc
test abcabc
test abcabc
testabcabc
みんなありがとう、あなたの答えから、私は私が必要なものを持っていると思います。
質問で言ったように、「abcabc
」と一致させたいのですが、「」を繰り返しただけで、「abc
」の前後に他の文字abcabc
はありませんが、その行の文字列は「」だけではありません。
したがって、答えは次のとおりです。
grep -n "\b\\(abc\\)\\{2\\}\b" filename