gpt4 book ai didi

linux - 使用 shell 在 pdf 中查找字符串

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:40:02 26 4
gpt4 key购买 nike

我想知道是否有任何方法可以使用 shell 脚本检查 pdf 文件中是否有字符串?我在寻找类似的东西:

if [search(string,pdf_file)] > 0 then  
echo "exist"
fi

最佳答案

此方法按页转换 .pdf 文件,因此可以更具体地定位搜索字符串 $query 的出现位置。

# search for query string in available pdf files pagewise
for i in *.pdf; do
pagenr=$(pdfinfo "$i" | grep "Pages" | grep -o "[0-9][0-9]*")
fileid="\n$i\n"
for (( p=1; p<=pagenr; p++ )); do
matches=$(pdftotext -q -f $p -l $p "$i" - | grep --color=always -in "$query")
if [ -n "$matches" ]; then
echo -e "${fileid}PAGE: $p"
echo "$matches"
fileid=""
fi
done
done

pdftotext -f $p -l $p 将要转换的范围限制为仅由数字 $p 标识的一页。 grep --color=always 允许在随后的 echo 中保护匹配高亮。 fileid="" 只是确保 .pdf 文档的文件名对于多个匹配只打印一次。

关于linux - 使用 shell 在 pdf 中查找字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14449968/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com