端末に空白の改行が表示されるまで検索パターンの結果を印刷できますか?

端末に空白の改行が表示されるまで検索パターンの結果を印刷できますか?

たとえば、次の内容を含むファイルがあります。

# TODO: Optimize this.
alias bash='start bash'

# FIXME: Just fix this.
alias fix='there is something wrong with this

私が望むのは、パターンを検索すると、TODO:次のような結果が印刷されることです。

# TODO: Optimize this.
alias bash='start bash'

可能ですか?

答え1

奇妙な入力短絡モード:

awk -vRS= '/TODO:/' file

答え2

繰り返すhttps://stackoverflow.com/questions/13534306/how-can-i-set-the-grep-after-context-to-be-until-the-next-blank-line

sedしかし、投稿のアドバイスに従う必要があります。

sed -n '/pattern/,/^$/p' file

答え3

grep解決策。

grep -zoP '(?s)^# TODO.*^$' file

関連情報