grep --regexp=: 改行で区切られた複数のパターン

grep --regexp=: 改行で区切られた複数のパターン

機能の準備とテスト:

echo -e 'q\nd' > patt

cat patt
q
d

echo 'qweasd' | grep --file=patt
qweasd

ファイルに2つのテンプレートを指定すると、すべてがマニュアルのように機能します。改行を使用してテンプレートを複数の部分に分割して同じ結果を得るにはどうすればよいですか?

それともこれはバグですか手動

-e models
--regexp=patterns は、
パターンを 1 つ以上のパターンとして使用します。パターンの改行は、各パターンを次のパターンと区別します。このオプションを複数回使用するか、-f(--file)オプションと組み合わせて使用​​すると、指定されたすべてのパターンが検索されます。通常、シェルコマンドでgrepを使用するときはパターンを引用する必要があります。 (-e は POSIX で指定されます.)

指定された分離方法にのみ興味があり、次の変形には興味がありません。

grep -e 'pattern1\|pattern2'
grep -e 'pattern1' -e 'pattern2'

答え1

指示は正確ですが、方法は明確ではありません。コマンドラインで改行を使用してください。

$ grep -e 'q
> d' <<<"qweasd"

つまりgrep -e 'q、 を入力してから を入力するEnterと、シェルに補助プロンプト(>上)が表示され、次d'などを入力します。

関連情報