如何捕捉或回显文件中两个单词之间的所有内容

时间:2014-04-24 12:14:50

标签: awk sed echo cat

如何捕捉或回显文件中两个单词之间的所有内容?

例如

df
df
Instance 
d
f
g
end

所以我想要Instance和end之间的所有内容

由于

4 个答案:

答案 0 :(得分:3)

这可能适合你(GNU sed):

sed -n '/^Instance/,/^end/{//d;p}' file

或格伦指出:

sed -n '/^Instance/,/^end/{//!p}' file

答案 1 :(得分:2)

这应该是正确的awk

awk '/end/{f=0} f; /Instance/{f=1}' file
d
f
g

PS,数据不在一行中。 OP缺少代码标签,所以在一行中显示...

答案 2 :(得分:1)

awk '{match($0,/Instance(.*)end/,a); print a[1]}' input.txt

输出:

 d f g 

答案 3 :(得分:0)

sed -n '/^Instance/,/^end/{/^Instance/!{/^end/!p}}' file
d
f
g