这可以是一种方法:
$ awk '/pattern1/ {p=1}; p; /pattern2/ {p=0}' file********************************* Results *********************************SUCCEEDED......some text***************************************************************************
- 找到时
pattern1
,则使变量p = 1。 - 它仅在时打印行
p==1
。这是通过p
条件完成的。如果为true,它将执行默认的awk *** 作,即print
。否则,事实并非如此。pattern2
- 找到时
p
,则使变量p = 0。由于先后检查此条件pattern2
,它将打印$ awk '
第一次出现的行。$ cat a***************************************************************************text line # n-2pattern1********************************* Results *********************************SUCCEEDED......some text***************************************************************************pattern2text line # m+2pattern2***************************************************************************$ awk '/pattern1/ {p=1}; p; /pattern2/ {p=0}' apattern1********************************* Results *********************************SUCCEEDED......some text***************************************************************************pattern2
=="pattern1" {p=1}; p; =="pattern2" {p=0}' file
如果要精确匹配行:
测试欢迎分享,转载请注明来源:内存溢出
评论列表(0条)