在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文件名,即使文本是通过管道传递的。
相关推荐
挺6的还36 分钟前
Boost搜索引擎
linux
天赐学c语言1 小时前
Linux进程信号(上)
linux·可重入函数·进程信号
ajassi20001 小时前
开源 Linux 服务器与中间件(四)服务器--Tomcat
linux·服务器·开源
云半S一2 小时前
春招准备之Linux系统篇
linux·经验分享·笔记
帅锅锅0072 小时前
SeLinux 全面详解
android·linux
王廷胡_白嫖帝2 小时前
1. Linux 驱动开发前景
linux·运维·驱动开发
hjlgs2 小时前
Linux中I2C常见问题一
linux
ha20428941943 小时前
Linux操作系统学习之---线程控制
java·linux·学习
wangbing11253 小时前
迁移服务器
运维·服务器
细节控菜鸡3 小时前
【排查实录】Web 页面能打开,服务器能通接口,客户端却访问失败?原因全在这!
运维·服务器·前端