当我给出打印命令时,打印作业文件存储到/ var / spool / cups目录中,但是是PDF格式。有没有办法解码该pdf文件,以便我可以监视那里的数据pdf文件,并据此对该用户采取行动?
答案 0 :(得分:0)
调度程序通常将作业文件存储在假脱机目录中 的/ var /阀芯/杯。在假脱机中可以找到两种类型的文件 directory:控制文件以字母“c”开头(“c00001”, “c99999”,“c100000”等)和以字母“d”开头的数据文件 (“d00001-001”,“d99999-001”,“d100000-001”等)控制文件是 基于原始IPP打印作业或创建作业的IPP消息 消息,而数据文件是原始打印文件 提交印刷。每个已知的作业都有一个控制文件 到系统和每个作业的0个或多个数据文件。
https://www.cups.org/doc/spec-design.html
您必须搜索d000234
等文件(数据文件,而不是c000234
打印控制文件)。
您可以执行file d000234
查找有关文件格式的信息。
E.g:
[root@pc cups]# file d000234
d000234: PostScript document text conforming DSC level 3.0, Level 2
对于这项工作,我使用默认的系统打印对话框打印了PDF。某处它被转换为PhostScript。使用具有PostScript功能的任何应用程序打开它。
E.g:
okular d000234
只有在cupsd.conf
中启用了“PreserveJobFiles”和“PreserveJobHistory”时才能使用数据文件。