![如果有的话,CUPS 将打印文档的文件保存在哪里?](https://linux22.com/image/1017970/%E5%A6%82%E6%9E%9C%E6%9C%89%E7%9A%84%E8%AF%9D%EF%BC%8CCUPS%20%E5%B0%86%E6%89%93%E5%8D%B0%E6%96%87%E6%A1%A3%E7%9A%84%E6%96%87%E4%BB%B6%E4%BF%9D%E5%AD%98%E5%9C%A8%E5%93%AA%E9%87%8C%EF%BC%9F.png)
我想创建一个文档管理系统,以便从 cups 的打印作业历史记录中获取每个打印文档的文件位置。但我找不到检索此信息的方法。
我已经尝试过了
lpstat -W completed
但它只给了我作业 ID、用户、时间戳等,但没有关于文件来源的信息。在我的情况下是目录和文件名。
有人有提示吗?
答案1
查看cups-files.conf
RequestRoot 目录
指定包含打印作业和其他 HTTP 请求数据的目录。默认值为“/var/spool/cups”。
文件保存的格式为:
/var/spool/cups/d*-nnn
/var/spool/cups/c*
在哪里
*
是打印机 ID。c
是控制文件d
是实际数据nnn
是文档编号。以 001 开头。
哦,看看你是否安装了“testipp”。这是一个 cups 实用程序,它会吐出你需要知道的有关文档的所有信息
这将给出已完成作业的列表(摘自U+L):
sudo lpstat -W completed -u $(strings /var/spool/cups/* | \
grep -A 1 job-originating-user-name | \
grep -oP '.*(?=B)' |sort -u | paste -sd ',')