Linux命令-lpr(从命令行提交文件到打印机打印)

🧭说明

lpr 命令是 Linux 系统中用于从命令行提交文件到打印机打印的工具。下面我将介绍它的基本用法、常用选项以及相关管理命令。

基本语法与核心功能

lpr 命令的基本语法为 lpr [选项] [文件...]。它的核心作用是向打印队列提交任务。如果不指定文件,lpr 会从标准输入读取数据。如果系统配置了多个打印机,可以通过 -P 选项指定目标,否则将使用默认打印机。

常用选项详解

下表汇总了 lpr 命令的一些常用选项。

选项 说明
-P 打印机名 指定使用哪台打印机。例如 -P HP_LaserJet
-# 份数 设置打印份数,例如 -# 3 打印三份。
-o 选项 设置高级打印选项,如双面打印、页码范围等。
-h 不打印标题页(burst page)。
-C/J/T "名称" 为打印作业设置分类、作业名或标题。
-l 指示文件已是原始格式(如PostScript),直接发送不转换。
-E 连接打印服务器时强制加密。
-U 用户名 指定提交作业时使用的用户名。
-r 打印任务成功加入队列后,删除原始文件。

常用操作示例

掌握以下实例能应对大部分打印需求。

  • 基础打印

    • 打印单个文件到默认打印机:lpr myfile.txt
    • 打印到指定打印机:lpr -P myprinter myfile.txt
  • 份数与多文件

    • 打印多份副本:lpr -# 3 myfile.txt
    • 一次性打印多个文件:lpr file1.txt file2.txt file3.txt
  • 高级设置

    • 双面打印lpr -o sides=two-sided-long-edge myfile.txt
    • 打印特定页面lpr -o page-ranges=1-5 myfile.pdf(打印第1至5页)
    • 打印管道或命令输出echo "Hello, World!" | lprls -l | lpr -P myprinter

管理打印任务

提交打印任务后,可能需要查看或管理打印队列。

  • 查看队列 :使用 lpstat -olpq 命令可以查看所有打印机的任务状态和作业编号。
  • 取消任务 :使用 cancel 作业编号lprm 作业编号 可以取消指定编号的打印任务。要取消当前用户的所有任务,可直接运行 lprm

常见问题排查

如果 lpr 命令未能正常工作,可以按以下思路排查:

  1. 命令未找到 :系统可能未安装打印系统(如CUPS)。可尝试安装:sudo apt install cups cups-client lpr(基于Debian/Ubuntu)。
  2. 打印机未响应 :首先检查打印机电源、连接是否正常,然后使用 lpstat -p 查看打印机状态。
  3. 权限问题:确保当前用户有权限使用目标打印机。有时需要管理员权限。
  4. 文件格式问题 :尝试打印纯文本文件。对于复杂格式(如PDF、图片),可先转换为PostScript或PDF再打印,或使用 -l 选项直接发送原始数据。
相关推荐
2401_8920709821 小时前
【Linux C++ 日志系统实战】LogFile 日志文件管理核心:滚动策略、线程安全与方法全解析
linux·c++·日志系统·日志滚动
雪可问春风21 小时前
docker环境部署
运维·docker·容器
lwx91485221 小时前
Linux-Shell算术运算
linux·运维·服务器
翻斗包菜21 小时前
PostgreSQL 日常维护完全指南:从基础操作到高级运维
运维·数据库·postgresql
somi721 小时前
ARM-驱动-02-Linux 内核开发环境搭建与编译
linux·运维·arm开发
双份浓缩馥芮白1 天前
【Docker】Linux 迁移 docker 目录(软链接)
linux·docker
海的透彻1 天前
nginx启动进程对文件的权限掌控
运维·chrome·nginx
黄昏晓x1 天前
Linux ---- UDP和TCP
linux·tcp/ip·udp
路溪非溪1 天前
Linux驱动开发中的常用接口总结(一)
linux·运维·驱动开发
此刻觐神1 天前
IMX6ULL开发板学习-01(Linux文件目录和目录相关命令)
linux·服务器·学习