使用awk或sed如何选择两种不同标记图案之间的线条?可能有多个标有这些图案的部分.
例如:假设文件包含:
abc
def1
ghi1
jkl1
mno
abc
def2
ghi2
jkl2
mno
pqr
stu
Run Code Online (Sandbox Code Playgroud)
并且起始模式是abc和结束模式是mno
So,我需要输出为:
def1
ghi1
jkl1
def2
ghi2
jkl2
Run Code Online (Sandbox Code Playgroud)
我使用sed匹配模式一次:
sed -e '1,/abc/d' -e '/mno/,$d' <FILE>
Run Code Online (Sandbox Code Playgroud)
有没有办法在sed或awk 反复做,直到文件的结尾?
我有类似下面的文件,我想打印给定的两个模式之间的界限PAT1和PAT2.
1
2
PAT1
3 - first block
4
PAT2
5
6
PAT1
7 - second block
PAT2
8
9
PAT1
10 - third block
Run Code Online (Sandbox Code Playgroud)
我已经阅读了如何选择两个标记图案之间的线条,这些线条可能会出现awk/sed多次,但我很想看到所有可能的组合,无论是否打印图案.
如何选择两种模式之间的线?
好
我知道这是一个微不足道的问题,但是:如何从两个已知模式/单词之间的文件中删除行:
pattern1
垃圾
模式2
获得:
pattern1
pattern2
有没有人知道用于研究sed的好(简单的书面!)资源?有很多明显的例子吗?