如何通过终端在一个大文件中找到一个字符串(以及前后的一些行)?

如何通过终端在一个大文件中找到一个字符串(以及前后的一些行)?

我想在一个非常大的文件中显示某个字符串前后的三行或四行,但无法用 vi 打开。该怎么做?

我试过了

grep -i -n -r 'mysearchstring'

但这只给了我一行。我需要前后几行来获取上下文!

谢谢!

我曾经看到过一个终端命令,它可以做到这一点,但我忘了,而且我再也找不到它了。:/

答案1

使用 grep 的-A(匹配后显示多少行) 和-B(匹配前显示多少行) 参数:

grep -i -n -r -A 4 -B 4 'mysearchstring' file.xml

答案2

我得到了它:

grep -n -A 5 -B 5 'searchstring' file.xml

这将找到searchstringfile.xml显示 5 条尾随线和 5 条前导线。

相关内容