macOS终端命令可高效管理打印任务:用lpstat查看队列与状态,lprm/cancel取消任务,rm清理缓存文件,launchctl重启CUPS服务,全程原生兼容不需额外工具。
直接用终端命令管理 macos 打印任务缓存与队列,是最高效、最底层的控制方式。它不依赖图形界面响应,能处理卡死、灰显、重复堆积等顽固问题,适合日常清理或故障排查。
查看当前所有打印任务
运行以下命令可列出所有待处理作业及对应 ID:
- lpstat -o:显示全部打印机上的排队任务,含任务 ID、文档名、页数和提交时间
- lpstat -p:列出系统中已注册的所有打印机及其状态(就绪/暂停/脱机)
- lpstat -t:完整诊断视图,包含服务状态、队列、默认打印机和后台进程信息
精准取消指定或全部任务
无需打开窗口,直接操作队列:
-
lprm [任务ID]:如
lprm 127,取消某台打印机上的单个任务(无需管理员权限) -
sudo lprm -P [打印机名] [任务ID]:当任务归属明确但普通用户无权操作时使用,例如
sudo lprm -P HP_LaserJet-305 128 - cancel -a:清空当前用户所有打印机上的全部任务(快速、安全、免密码)
- sudo cancel -a -x:强制清除所有用户、所有打印机的全部任务(需密码,适用于共享环境)
清理底层缓存文件
任务“消失”但实际仍卡在磁盘缓存中?这些文件位于 CUPS spool 目录:
- sudo rm /var/spool/cups/*:删除所有待处理的打印数据文件(.pdf、.urf 等),不影响配置或驱动
- sudo rm /var/spool/cups/tmp/*:清理临时转换过程中的中间文件,释放空间并避免格式冲突
- 注意:
/var/spool/cups/c0000*类文件是正在处理的任务快照,删除后对应任务将无法恢复
重置打印服务以彻底刷新状态
当队列反复重建、新任务无法入列或状态异常时,重启 CUPS 后台服务是关键一步:
- sudo launchctl stop org.cups.cupsd:停止服务
- sudo launchctl start org.cups.cupsd:重新启动
- 更彻底的做法:停服务 → 清缓存 → 启动,三步连贯执行即可恢复干净队列
这些命令全部基于 macOS 原生 CUPS 实现,兼容 Ventura 至 Sequoia 系统,不需额外安装工具,也不影响已保存的打印机配置或自定义预设。



















