如果字符串在sed中建立,则在两个正则表达式之间打印行

巴巴

类似这个问题

我有这个文件

START1
1
2
END1
START2
error
1
2
END2
START3
1
2
END3

我要是error找到的话 sed提取整张并打印

例如输出是

START2
error
1
2
END2

因为errorSTART2之间找到END2

仅用sed?!怎么解决

恶魔

使用sed

sed -n ':a;/START/,/END/{/END/!{$!{N;ba;}};/error/p;}' inputfile

想法是继续在两个指定地址之间的模式空间中添加行。如果找到了正则表达式(error在这种情况下为字符串),则打印该块。-n除非明确指定,否则不会打印任何内容。

对于您的样本输入,它将产生:

START2
error
1
2
END2

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

正则表达式以检查+,-或*是否在字符串中的两个单词之间

在两个标记字符串之间的字符串中查找/替换正则表达式模式

正则表达式获取两个%字符之间的字符串

正则表达式匹配两个特殊字符之间的字符串

正则表达式从选择的不同字符中匹配两个相同字符之间的字符串

在正则表达式中需要帮助,两个正则表达式之间的子字符串

仅提取两个正则表达式模式之间的字符串部分

正则表达式捕获两个不同标头之间的字符串

正则表达式在两个匹配项之间返回字符串

删除两个正则表达式模式之间的字符串

正则表达式查找包含在两个括号之间的字符串

提取两个正则表达式之间的字符串

如何在包含两个正则表达式的文件中打印行,其中一个是另一个的子字符串

Javascript中两个不同字符串正则表达式之间的所有文本

R中的正则表达式提取两个匹配字符串之间的部分(非意图)

正则表达式-提取两个表达式之间的字符串,仅获得最后的出现

正则表达式:如果字符串在其他两个指定字符串之间,则不匹配

正则表达式:在两个不匹配的字符串之间替换字符串

我如何使用正则表达式获取两个特定字符串之间的字符串?

正则表达式匹配两个相同字符串之间的所有字符串

正则表达式提取两个斜杠之间的字符串和其中的指定字符串

在正则表达式中,如何匹配两个不同的字符串

正则表达式匹配字符串中的两个单词

正则表达式以获取Javascript中两个字符串之间的字符串

正则表达式:使用多行sed提取两个字符串之间的内容

在两个特定的字符串之间使用正则表达式替换熊猫细胞中的字符串

正则表达式查找包含在两个不同字符串之间的文本及其在输入字符串中的位置

Python中的正则表达式,用于在两个已知字符串之间匹配字符串的多个事件

正则表达式在R中的两个分隔符之间查找包含特定子字符串的字符串