我正在尝试在模式之间进行搜索。我知道sed
会做到这一点,如果它是一次发生。在多次出现的文件中搜索模式
以下是文件:
Iowa<br>
data1<br>
data2<br>
Montana<br>
junk1<br>
junk2<br>
junk3<br>
Iowa<br>
data3<br>
data4<br>
Arizona<br>
junk5<br>
junk6<br>
我试图让Iowa
和Montana
之间的内容。
所以,我做sed -ne '/Iowa/,/Montana/p
$file
,看到这样的结果:
Iowa<br>
data1<br>
data2<br>
Montana<br>
Iowa<br>
data3<br>
data4<br>
Arizona<br>
junk5<br>
junk6<br>
不知道为什么它打印Iowa - Arizona
和超越。有没有办法仅在Iowa
和Montana
之间打印内容?
作为临时解决方法,我正在打印所有文件并执行第一次出现。
最后awk答案(http://stackoverflow.com/a/38972737/4082052)适合...也建议添加您的预期输出到kn如果你需要'爱荷华州'和'蒙大拿州'也输出或只有他们之间的线......也清楚说明,如果你的输入可以包含多个或只有一个'爱荷华州...蒙大拿州' – Sundeep