在文件中查找单词并显示在下方和上方吗? 2024-6-2 • grep find top 可能重复: 如何 grep 2 或 3 行,其中一行包含我想要的文本,其他行位于其下方? 假设我有一个文件。我想在其中找到一个特定的单词并显示该行。 有什么方法可以让我做到上述操作,同时还能包括结果行中上面和下面的 10 行? 我该如何使用 Linux 命令行来做到这一点? 答案1 假设你的文件名为filename,你的正则表达式是foo,并且想要打印匹配的行以及匹配行上方和下方 10 行以内的行: grep -C10 foo filename 更一般地,对于n匹配前后的行: grep -Cn foo filename 此解决方案可与 GNU grep 配合使用(Ubuntu 和几乎所有其他基于 Linux 的操作系统都具有该功能)。不过-C,并非所有grep实现都支持该标志。 打印行仅有的在匹配之前或之后,分别使用-Bn或开关,其中是要在匹配之前或之后添加的行数。有关替代方法的更多信息,请参阅-Ann这个相关问题(感谢福斯自由以注意到相似性)。 相关内容 LVM 问题和疑问 如何成功安装mlpack? 我无法建造 Pyrit VMWare Workstation Player 14,似乎无法隐藏顶部栏 等式中的大花括号 如何在序言中获取正确的总页数? 更改 Mac 10.7 的环境变量 如何从 CD 启动? 无法通过 RPC 连接到计算机 Windows 7 中的 DOS 命令提示符在哪里