【发布时间】:2020-01-17 19:22:28
【问题描述】:
我是 shell 脚本和 unix 命令的新手,我正在尝试找到一种在文件中的模式之间进行惰性匹配的好方法,但无法获得我想看到的输出。文本类似于以下示例(编辑:修订文本字符串
"hello
how
are
you
right
now
and
hey how
you
doing
thanks
see
you
and
ask
me if I
am
doing
okay"
期望的输出:
hey how
you
doing
对于涉及 sed、grep 或 awk 的类似问题,我尝试使用多个答案,但我一直看到此输出:
how
are
you
right
now
and
hey how
you
doing
thanks
see
you
and
ask
me if I
am
doing
我只想在单词“how”和“doing”之间执行惰性匹配,并打印中间的行(包括)(最好如何使用解决方案将返回的文本分配给 shell 脚本中的变量)
提前致谢
编辑
【问题讨论】:
-
我不确定使用术语惰性匹配是否是个好主意。至少来自熟悉正则表达式的人,您的实际结果与
how.*?doing将产生的结果相匹配。 -
尝试使用 awk awk '/hey/,/doing/'