在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文件名,即使文本是通过管道传递的。
相关推荐
笑洋仟40 分钟前
Linux StorCLI工具安装和使用
linux·数据库·redis
御水流红叶1 小时前
路由虚拟机的安装
运维·服务器
碎碎思1 小时前
从 JTAG 启动 Zynq UltraScale+ 上的嵌入式 Linux 镜像:详细实战教程
linux·运维·服务器
搜搜秀1 小时前
在linux的ext家族的文件系中,inode是也存放在block中的
linux·运维·服务器
利刃大大1 小时前
【SpringBoot】搭建Java部署环境 && 部署项目到Linux服务器
java·服务器·spring boot
zfj3211 小时前
计算机中的 DMA是什么技术
linux·服务器·网络·操作系统·dma
咩咩大主教1 小时前
在Linux bashrc配置全局代理导致etcd连接失败
linux·vscode·ubuntu·ssh·etcd·远程连接
北极之熊熊4 小时前
海量数据库安装及常用命令
linux·运维·数据库
航Hang*5 小时前
第六章:网络系统建设与运维(高级)—— STP生成树协议
运维·服务器·网络·笔记·ensp
老王熬夜敲代码6 小时前
多路复用epoll
linux·网络·笔记