linux - 如何在 linux 中使用 find 打印与我的文本匹配的行?

标签 linux find printing

你好,我正在使用这个命令在 linux 中的文件中查找文本

find ./ -type f -exec grep -l "Text To Find" {} \;

该命令工作正常,但我想自动打印包含文本的行,或者如果可能的话,打印文本上方的前两行和文本后面的两行。

还有另一个关于查找文本并打印行而不是使用 find 的建议,

非常感谢。

最佳答案

find ./ -type f -exec grep -Hn "Text To Find" {} \;

使用 -A 和 -B 标志打印匹配前后的行:

find ./ -type f -exec grep -Hn -A1 -B1 "Text To Find" {} \;

你也可以只使用 grep:

grep -R -Hn -A1 -B1 "Text To Find" *

关于linux - 如何在 linux 中使用 find 打印与我的文本匹配的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/571572/

相关文章:

regex - 结合这两个正则表达式模式

python - Pandas - 找到第一次出现

html - 打印 html 页面的一部分

ios - 从 WKWebView 打印 2 页时出现问题

linux - 是否可以离线使用 google speech api?

使用 main() 创建共享库

regex - 使用正则表达式查找并替换(批处理.BAT)

bash - 命令行查找目录中的第一个文件

php - 如何检测客户端机器上的打印机?

python - 在 Nvidia-Docker 中运行 CUFFT 例程