ブロックを見つける方法は?それともawk / ackを使用する必要がありますか?

ブロックを見つける方法は?それともawk / ackを使用する必要がありますか?

次の情報を含むファイルがあるとします。

...
Entry '234238': some text
  some text
  some text
  some text
Entry '899823': some text
  some text
  some text
Entry '234238': more text
  more text
  more text
Entry '645353': some text
  some text
  some text

特定を抽出したいと思いますEntry '<code>'。たとえば、grep_my_block 'Entry '234238'次のように返す必要があります。

Entry '234238': some text
  some text
  some text
  some text
Entry '234238': more text
  more text
  more text

気づく:

  1. 識別子ブロックは<code>ファイルに複数回現れることがあります。私たちはそのようなブロックをすべて抽出したいと思います。
  2. ブロックは不明な数の行で構成できます。

どのように使用したりgrepこれをawk行うことができますかack

ベストアンサー1

awk "/^Entry '234238'/ {printline = 1; print; next}
     /^Entry / {printline = 0}
     printline"

おすすめ記事