小编Osk*_*kar的帖子

用sed查找图案,打印行直到第一个空行

我试图在logcat中找到特定的PID,并打印所有行,直到下一个空行。日志猫看起来像这样。

[ 07-17 11:15:14.003   483:  515 D/SensorService ]
Message

[ 07-17 11:15:15.300 20220:20225 D/dalvikvm ]
Message

[ 07-17 11:15:17.519   483:  515 D/SensorService ]
Message
Run Code Online (Sandbox Code Playgroud)

我在寻找解决此问题的方法时发现的是:

sed -n '/pattern/,/^$/p' logcat
Run Code Online (Sandbox Code Playgroud)

在此示例中,我想这样做

sed -n '/20220/,/^$/p' logcat
Run Code Online (Sandbox Code Playgroud)

但是,我无法使它正常工作。实际上,它会打印整个logcat而不是对其进行过滤。当我执行

sed -n '/pattern/p' logcat
Run Code Online (Sandbox Code Playgroud)

它按预期方式工作(如grep),但仅采用第一行。在我的理解中,^表示行的开始,$表示结束,因此使^ $为空行。

我将不胜感激如何解决此问题。谢谢。

search grep sed find

2
推荐指数
1
解决办法
4557
查看次数

标签 统计

find ×1

grep ×1

search ×1

sed ×1