我有一个如下的文件
myname
_ something
_ something
_ something
myname
_ something
_ something
myname
_ something
and it follows and no standard other than myname word.
现在我想打印从 myname 到直到找到 myname 的第一组搜索,如下所示。
myname
_ something
_ something
_
我尝试使用以下方法,但它不起作用。
sed -n -e '/myname/,/myname/ p' file
它打印所有集合。
也试过了,但没有用。
sed -n '/myname/,$ p;/myname/q'
最佳答案
这是 awk
的另一种方式:
awk '/myname/{++c}c<2' file
$ cat file
myname
_ something
_ something
_ something
myname
_ something
_ something
myname
_ something
$ awk '/myname/{++c}c<2' file
myname
_ something
_ something
_ something
如果你的文件太大,那么:
awk '/myname/{++c}c==2{exit}1' file
关于linux - sed 搜索范围并打印第一组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22277869/