在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文件名,即使文本是通过管道传递的。
相关推荐
Codefengfeng3 小时前
分辨压缩包的真加密与伪加密
linux·运维·网络
暴力求解3 小时前
Linux---进程(五)进程调度
linux·运维·服务器
楼田莉子3 小时前
C++项目:日志&&线程池
linux·c++·学习·visual studio code
wsad05324 小时前
Linux 用户和组管理完整指南(中英文参数对照)
linux·运维·服务器
S-码农4 小时前
Linux进程通讯——共享内存
linux
EmbedLinX4 小时前
嵌入式Linux之U-Boot
linux·服务器·笔记·学习
程序设计实验室5 小时前
从挖矿木马入侵到 Docker Rootless 加固,我的服务器安全复盘
linux·docker
雷电法拉珑5 小时前
财务数据批量采集
linux·前端·python
fjh19976 小时前
使用caddy签发ip证书
运维·服务器
Roc.Chang6 小时前
Vite 启动报错:listen EACCES: permission denied 0.0.0.0:80 解决方案
linux·前端·vue·vite