在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文件名,即使文本是通过管道传递的。
相关推荐
未既12 小时前
linux以及docker修改文件描述符
linux·运维·docker
yuanmenghao12 小时前
Linux 性能实战 | 第 20 篇:trace-cmd 与 kernelshark 可视化分析 [特殊字符]
linux·python·性能优化
Volunteer Technology12 小时前
LangGraph的WorkFlow(一)
java·服务器·windows
2401_8735878212 小时前
Linux——传输层协议TCP
linux·网络·tcp/ip
嵌入小生00712 小时前
进程(2)---相关函数接口、消亡、exec函数族 | 嵌入式(Linux)
linux·c语言·嵌入式·进程·函数接口·exec函数族·进程的消亡
程序员一点12 小时前
第9章:软件包管理(DNF 与 RPM)
linux·运维·openeuler
@syh.12 小时前
【linux】进程间通信
linux
wdfk_prog12 小时前
EWMA、加权平均与一次低通滤波的对比与选型
linux·笔记·学习·游戏·ssh
FoldWinCard12 小时前
Python 第三次作业
java·服务器·python
Ronin30513 小时前
交换机路由管理模块
服务器·rabbitmq·动态规划·交换路由