我想匹配像这样的文字
my begin line
not useful text that I cannot match because I don't know how it is composed
my end line
我会匹配上面的所有文字,我现在的问题是我无法匹配所有文字,只是第一行有一个像这样的重复文本:
my begin line\n.*my end line
所以我很困惑,有什么帮助吗?
答案 0 :(得分:1)
你可以用sed:
来做sed -n '/my begin line/,/my end line/p'
答案 1 :(得分:1)
你在评论中提到了awk:
这将为您提供所有文本(包括带开头,结束模式的行)
awk '/my begin line/,/my end line/' file
这只为你提供了开始/结束模式之间的界限(没有带开头,结束模式的行)
awk '/my begin line/{f=1;next;}/my end line/{f=0}f' file
答案 2 :(得分:1)
要在两种模式之间打印线条,排除包含模式的线条本身使用:
sed -n '/my begin line/,/my end line/ {/my begin line/n;/my end line/!p}' file