在Linux系统中搜索当前路径及其子目录下所有PDF文件中是否包含特定字符串

目录标题


方法一:pdfgrep

sh 复制代码
pdfgrep -ri "rockchip" .

方法二:使用findxargspdftotext(将PDF转换为文本)组合,然后用grep搜索

这里是一个示例命令,显示了如何将这些工具组合起来搜索字符串"rockchip":

sh 复制代码
find . -name "*.pdf" -exec sh -c 'pdftotext "{}" - | grep -H --label="{}" "rockchip"' \;

这条命令将:

  • 使用find命令在当前目录及子目录中查找所有扩展名为.pdf的文件。
  • 对每个找到的PDF文件,执行sh -c启动一个新的shell来处理以下命令:
    • 使用pdftotext将PDF文件转换为文本并将结果直接传递给grep
    • 使用grep搜索"rockchip"字符串,其中-H选项会打印文件名,--label会确保在输出中使用原始的PDF文件名,即使文本是通过管道传递的。
相关推荐
林开落L27 分钟前
库的制作与原理
linux·开发语言·动静态库·库的制作
2401_888423091 小时前
Linux软件编程-线程(2)
linux
共享家95272 小时前
linux-数据链路层
linux·网络·macos
Demisse2 小时前
[Linux] Linux文件系统基本管理
linux·运维·服务器
BAOYUCompany3 小时前
暴雨服务器:以定制化满足算力需求多样化
运维·服务器
小米里的大麦3 小时前
025 理解文件系统
linux
青岛佰优联创新科技有限公司4 小时前
移动板房的网络化建设
服务器·人工智能·云计算·智慧城市
打不了嗝 ᥬ᭄4 小时前
Linux 信号
linux·开发语言·c++·算法
禁默4 小时前
进程替换:从 “改头换面” 到程序加载的底层逻辑
linux·运维·服务器
gameatp5 小时前
从 Windows 到 Linux 服务器的全自动部署教程(免密登录 + 压缩 + 上传 + 启动)
linux·服务器·windows