在文件中查找单词并显示在下方和上方吗? 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这个相关问题(感谢福斯自由以注意到相似性)。 相关内容 无头式 Ubuntu 无法使用 HDMI 作为本地控制台 安装固件工具 当系统因任何外部连接而被阻止时,如何将文件传输到其他系统[关闭] 每行 Eqnarray 多个等号 记录到文件 自定义 Ubuntu CD 的 dpkg 依赖项 php-fpm 在 X 请求后失败 多重引导系统建议? 是否可以将 2 个磁盘合并在一起以节省每日的文件量? 需要:AWK 中的非关联数组