如何列出文件中与单词“错误”匹配的行的前 10 行或后 10 行。
我用来grep 'error' /var/log/logfile.log > errors
打印并保存与单词“error”匹配的行到名为“errors”的文件中。我该如何更改它以满足我的要求?有人知道吗?
答案1
使用 grep -A、-B 和 -C 显示匹配之前/之后/周围的行
-A 是匹配后打印指定的 N 行的选项,如下所示。
-B 是打印匹配前指定的 N 行的选项。
-C 是打印匹配前指定的 N 行的选项。在某些情况下,您可能希望匹配与两侧的行一起出现。此选项在匹配的两侧(前后)显示 N 行。
来源:http://www.thegeekstuff.com/2009/03/15-practical-unix-grep-command-examples/(我也建议你阅读完整的博客文章)
因此,命令应该是这样的grep -C 10 'error'