我是 bash 的新手,所以这可能只是简单的回答,但我的研究还没有为我找到解决方案。我正在尝试编写一个简单的 bash 脚本来检查是否需要对 pdf 进行 OCR 处理。它使用pdftotext
随 Xpdf 分发的可执行文件。如果pdftotext
不输出任何文本,则需要对 PDF 进行 OCR 处理。问题是,如果 PDF 没有经过 OCR 处理,则pdftotext
返回换页符字符(而不仅仅是空字符串)。尽我所能,我无法让 bash 将返回的字符串pdftotext
与表单提要进行比较。
这是我的代码:
pdf_txt=$(pdftotext -q -l 5 '/Path/to/pdf/test.pdf' -)
if [ "$pdf_txt" = "\f" ]
then
echo 'needs ocr'
else
echo "doesn't need ocr"
fi
现在,test.pdf
还没有经过 OCR 处理。如果我在 Python 中运行这个测试并使用repr()
I get \x0c
,换页符的字符代码。但是bash 中的echo
ing$pdf_txt
只打印空行。
想法?建议?