小编use*_*509的帖子

在开始和结束模式之间打印行,但如果结束模式不存在,则不打印

我正在寻找两个匹配模式之间的界限。如果缺少任何开始或结束模式,则不应打印行。

正确输入:

a
***** BEGIN *****
BASH is awesome
BASH is awesome
***** END *****
b
Run Code Online (Sandbox Code Playgroud)

输出将是

***** BEGIN *****
BASH is awesome
BASH is awesome
***** END *****
Run Code Online (Sandbox Code Playgroud)

现在假设输入中缺少 END 模式

a
***** BEGIN *****
BASH is awesome
BASH is awesome
b
Run Code Online (Sandbox Code Playgroud)

不应打印行。

我试过 sed:

sed -n '/BEGIN/,/END/p' input
Run Code Online (Sandbox Code Playgroud)

如果缺少 END 模式,它将打印到最后一行的所有数据。

如何解决?

linux sed

6
推荐指数
3
解决办法
4307
查看次数

标签 统计

linux ×1

sed ×1