在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文件名,即使文本是通过管道传递的。
相关推荐
Rockbean12 小时前
用40行代码搭建自己的无服务器OCR
服务器·python·deepseek
茶杯梦轩15 小时前
CompletableFuture 在 项目实战 中 创建异步任务 的核心优势及使用场景
服务器·后端·面试
崔小汤呀16 小时前
最全的docker安装笔记,包含CentOS和Ubuntu
linux·后端
何中应16 小时前
vi编辑器使用
linux·后端·操作系统
何中应16 小时前
Linux进程无法被kill
linux·后端·操作系统
何中应16 小时前
rm-rf /命令操作介绍
linux·后端·操作系统
何中应16 小时前
Linux常用命令
linux·操作系统
葛立国16 小时前
从 / 和 /dev 说起:Linux 文件系统与挂载点一文理清
linux
海天鹰1 天前
【免费】PHP主机=域名+解析+主机
服务器
哇哈哈20211 天前
信号量和信号
linux·c++