仅使用grep查找仅第一次出现

Atchyut Sreekar

假设我有一个包含很多单词的文件,我只想找到模式为“ xyz”的第一个单词。如果同一行上有多个带有此模式的单词,该怎么办?-m返回匹配的第一行中的所有单词。我只需要grep命令。

博士

默认情况下,将grep打印与模式匹配,因此,如果该模式在一行中出现一次或多次,grep则将打印整行。

添加标志-m 7将告诉grep您仅打印出现图案的前7行。

所以这应该做您想要的(我还没有测试):

grep -o -m 1 xyz myfile | head -1

编辑:正如@Kusalananda指出的那样,您严格不需要-m标志,但使用它意味着grep不需要解析整个文件,并且将更快地输出结果,尤其myfile是大文件时。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章