在 Solaris 10 中,如何取消/删除来自打印服务器的所有打印请求?
我知道我可以删除 中的所有条目/var/spool/lp/localhost
,但是有没有比全部删除更好的方法呢?
答案1
看起来正在运行一个简单的
lprm -
会做你想做的事。
根据lprm
手册页删除打印作业:
线性调频
从打印队列中删除打印请求
概要
/usr/ucb/lprm [-P destination] [-] [request-ID]... [user]...
描述
lprm 实用程序从打印队列中删除打印请求(请求 ID)。
如果没有参数,lprm 将删除当前的打印请求。 lprm 报告与它删除的打印请求关联的文件的名称。如果没有要删除的适用打印请求,则 lprm 将保持静默。
用户只能删除与其用户名关联的打印请求。参见注释。如果超级用户执行 lprm 并指定用户操作数,则 lprm 将删除属于指定用户的所有打印请求。
打印客户端命令使用名称服务交换机中的“打印机”数据库来定位目的地信息。有关详细信息,请参阅 nsswitch.conf(4)、printers(4) 和 Printers.conf(4)。
选项
支持以下选项:
-P 目的地
要从中删除打印请求的打印机或打印机类别(请参阅 lpadmin(1M))的名称。使用原子、URI 样式 (scheme://endpoint) 或 POSIX 样式 (server:destination) 名称指定目标。有关目标名称的命名约定的信息,请参阅 Printers.conf(4)。
-
如果用户指定此选项,则删除该用户拥有的所有打印请求。如果超级用户指定此选项,则删除打印队列中的所有请求。作业所有权由执行 lpr 的计算机上的用户登录名和主机名确定。参见注释。
操作数
支持以下操作数。
请求ID
删除特定的打印请求。将 request-ID 指定为与打印请求关联并由 lpq 报告的作业编号 (Job)。请参见 lpq(1B)。用户
- 删除与特定用户关联的打印请求。将 user 指定为有效的用户名。该选项只能由超级用户使用。
您还可以使用lpq
命令在删除打印队列之前显示它们。