【发布时间】:2018-12-08 23:37:20
【问题描述】:
将作业打印到 CUPS 服务器时,您可以将 cupsd.conf 参数 PreserveJobHistory 和 PreserveJobFiles 设置为控制你想保留多少工作。
CUPS 始终将实际打印作业文件临时存储在目录 /var/spool/cups/ 中。打印客户端提交的假脱机文件(在 CUPS 的过滤器转换链启动之前)始终命名为 dNNNNNN-001(以“数据文件”中的“d”开头)其中 NNNNNN 是 CUPS 分配的作业 ID。如果您提交多文档打印作业,则同一作业 ID 内的第二个文档的假脱机文件名为 dNNNNNN-002,依此类推...
此外,同一目录将保存以另一个字符开头的文件,即控制文件,每个作业的它们将被命名为cNNNNNN。
我想剖析这些控制文件文件。
当我使用strings 工具时,它只显示了我想要获得的部分内容:
示例:
sudo strings /var/spool/cups/d00089
attributes-charset
utf-8H
attributes-natural-language
en-us
printer-uri
%ipp://localhost:631/printers/hp2B
job-originating-user-name
kurtpfeifleB
job-name
hosts!
copies
finishings
job-cancel-after
job-hold-until
no-hold!
job-priority
job-sheets
noneB
none!
number-up
job-uuid
-urn:uuid:ca854775-f721-34a5-57e0-b38b8fb0f4c8B
job-originating-host-name
localhost!
time-at-creation
time-at-processing
time-at-completed
job-id
job-state
job-state-reasons
processing-to-stop-point!
job-media-sheets-completed
job-printer-uri
(ipp://host13.local:631/printers/hp!
job-k-octets
document-format
text/plainA
job-printer-state-message
job-printer-state-reasons
none
另外,strings 的输出看起来不太好。
问题:是否有一种程序化(或其他)方式来剖析这些 CUPS 作业控制文件并获得包含所有信息的完整内容?
【问题讨论】:
标签: binaryfiles cups ipp-protocol