grep一个文件,但显示几行?
时间:2020-03-05 18:39:14 来源:igfitidea点击:
我想用" grep"作为字符串,但还要显示前五行,后五行以及匹配的行。我将如何做到这一点?
解决方案
回答
对于BSD或者GNUgrep
,我们可以使用-B num设置匹配之前的行数,而-A num设置匹配之后的行数。
grep -B 3 -A 2 foo README.txt
如果我们希望前后使用相同数量的行,则可以使用-C num。
grep -C 3 foo README.txt
这将在前面显示3行,在后面显示3行。
回答
grep astring myfile -A 5 -B 5
将grep" myfile"替换为" astring",并在每次匹配之前和之后显示5行
回答
-A
和-B
将会起作用,-C n
(对于上下文的n行)或者只是-n
(对于上下文的n行)都将起作用。
回答
我通常使用
grep searchstring file -C n # n for number of lines of context up and down
许多工具(例如grep)也具有非常好的man文件。我发现自己经常参考grep的手册页,因为我们可以做很多事情。
man grep
许多GNU工具还具有一个信息页面,该信息页面除了手册页面外还可能包含更多有用的信息。
info grep
回答
ack使用与grep类似的参数,并接受-C
。但是通常通过代码搜索会更好。