加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl – 使用单行命令删除多行模式

发布时间:2020-12-16 06:08:40 所属栏目:大数据 来源:网络整理
导读:我想删除文件中的所有空段. 空段可以由一对以START开头并以END结尾的连续行指定.有效段将在以START开头并以END结尾的行之间具有一些内容 样本输入 HeaderSTART argumentsENDAny contentsSTART arguments...something...ENDFooter 期望的输出 HeaderAny conte
我想删除文件中的所有空段.

空段可以由一对以START开头并以END结尾的连续行指定.有效段将在以START开头并以END结尾的行之间具有一些内容

样本输入

Header

START arguments
END

Any contents

START arguments
...
something
...
END

Footer

期望的输出

Header


Any contents

START arguments
...
something
...
END

Footer

在这里,我正在寻找可能的一个衬垫.任何帮助,将不胜感激.

试验

我试过跟随awk.它在某种程度上起作用,但它甚至在有效段中删除了START行.

awk '/^START/ && getline && /^END$/ {next} 1' file

解决方法

仅限 gawk

awk -v RS='START[^n]*nENDn' '{printf "%s",$0}' file.txt

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读