我有很多包含大量 PDF 的文件夹,我想要光学字符识别那些没有文本层的文件夹。所以首先,我想找到他们。我想也许一根管子pdfgrep
就能完成这项工作,但我迷路了。
如何找到没有文本的 PDF?
答案1
是的,使用pdfgrep
听起来是个好主意。就像是:
find . -name '*.[Pp][Dd][Ff]' -type f \
! -exec pdfgrep -q '\w' {} ';' -print
pdfgrep
将报告找不到任何单词字符(数字或下划线)的 pdf 文件列表。
(对于某些find
实现,您可以使用-iname '*.pdf'
而不是-name '*.[Pp][Dd][Ff]'
上面的内容。请注意,它假设文件名是当前语言环境中的有效文本)
要查找少于 1000 个单词字符的文件:
find . -name '*.[Pp][Dd][Ff]' -type f -exec sh -c '
for file do
[ "$(pdfgrep -c "\w" "$file")" -lt 1000 ] &&
printf "%s\n" "$file"
done' sh {} +