【发布时间】:2013-11-25 03:22:59
【问题描述】:
我想删除我文件中的所有空白段。
空段可以由一对以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
【问题讨论】:
-
这会删除 START 行,因为您没有在 getline 之前打印它们。
-
@EtanReisner 我明白这一点,但如果我只打印所有 START 行,那么即使是空段中的行也会被打印。可能我需要更多的调理。还是我错过了什么?
-
你需要更多的条件,然后你才能得到我相信的模式语句。请参阅我的答案以了解可能性。