如何使用命令行检测受限 PDF?

Iva*_*van 5 pdf

某些 PDF 文件中设置了一些标志,不允许将内容复制到剪贴板。打印和其他一些操作也可以被禁止。通常可以使用qpdf -decrypt命令轻松删除该限制。

我想要的是检查 PDF 是否受到限制,而不应用解密操作(并且没有实际打开它并尝试复制某些内容),以便我可以运行脚本来查找特定文件系统下的所有受限制文件。

Ste*_*itt 5

Poppler提供了一个pdfinfo工具,可用于确定任何给定 PDF 中的活动保护。受限 PDF 已启用加密,并且pdfinfo将输出(除其他外)一行指示:

Encrypted:      yes (print:no copy:no change:no addNotes:no algorithm:RC4)
Run Code Online (Sandbox Code Playgroud)

所以像

pdfinfo yourpdf.pdf | grep -q 'Encrypted:.*yes \(.*copy:no.*\)'
Run Code Online (Sandbox Code Playgroud)

仅当 PDF 不允许复制时才会成功。