Answers:
该-m
选项可能是您要寻找的:
grep -m 10 PATTERN [FILE]
来自man grep
:
-m NUM, --max-count=NUM
Stop reading a file after NUM matching lines. If the input is
standard input from a regular file, and NUM matching lines are
output, grep ensures that the standard input is positioned to
just after the last matching line before exiting, regardless of
the presence of trailing context lines. This enables a calling
process to resume a search.
注意:找到指定数量的匹配项后,grep将停止读取文件!
-m 1
如果在我的笔记本电脑上有1000万行的文件中,grep需要0.005s,而没有1.579s。
tail
通常会起作用,但是如果您要弄乱上下文(例如grep -A10 PATTERN
使用tail
截断上下文而不是结果的数量),则分解尤其明显。这个答案就是我想要的。
-m 10
是grepping多个文件时有所不同的选项!如果第一个文件中的匹配项过多,则在后续文件中进行正面匹配不会显示匹配项。谢谢 !
less
通过管道使用。这将填满屏幕,您可以按ENTER键以查看更多行并q
退出:grep "SomeText" somefile.csv | less