我有多行,我需要选择其中一行,我已经找到了使用grep所需的行,
但现在我只想要结果中的第一行。
如何使用grep
,awk
,sed
等进行此操作。
This is first line.
This is second line.
This is seventh line.
使用grep我得到了o / p
grep“这是s”file.txt
。
This is second line.
This is seventh line.
现在我需要第一行。
如何使用'\n'
作为字段分隔符。
答案 0 :(得分:1)
打印与This is s
匹配的第一行,然后退出awk
:
$ awk '/This is s/{print $0; exit}'
This is second line.
但是GNU grep
有-m
选项,停止的是给定的匹配数:
$ grep -Fm 1 'This is s' file
This is second line.
注意:-F
用于固定字符串匹配而不是正则表达式。
为了完成sed
你可以做到:
$ sed '/This is s/!d;q' file
This is second line.
然而,这个例子似乎有些奇怪,因为你可以grep 'second' file
。