使用grep打印整行直到行尾

Printing entire line till END of LINE using grep

我有以下一段文字。

TRACE(FOO, CAT,
    INFO, "Hello World")

如果我使用 grep -r "FOO" file.txt,grep 只打印第一行。我需要匹配整条线。我只有 FOO 作为搜索键。我想用 grep 来做这个。

我试过 grep --after-context=1,但在我的测试是 TRACE(FOO, CAT, INFO, "HELLO WORLD" 的情况下(即 CAT 后没有换行符)它也不必要地显示下一行。

你能帮我做一下吗?

孩子

sed -n -e '/FOO.*)/p' -e '/FOO[^)]*$/{p;n;p}' x.txt

if sed 也可以。 -n 安静输出,p 打印该行,n 转到下一行。

合并 2 行,

 sed -n -e '/FOO.*)/p' -e '/FOO[^)]*$/{N;s/\n//p;n;p}' x.txt