0

我有多行,我需要选择其中一个,我使用 grep 找到了所需的行,但现在我只想要结果中的第一行。我怎样才能使用,,,等来做到grepawk一点sed

This is first line.
This is second line.
This is seventh line.

使用 grep 我得到了 o/p grep "This is s" file.txt

This is second line.
This is seventh line.

现在我需要第一行。我如何'\n'用作字段分隔符。

4

1 回答 1

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

于 2013-08-22T10:19:34.557 回答