Linux命令-lp(打印文件或修改排队的打印任务)

🧭说明

lp 是 Linux 系统中用于打印文件的常用命令,它允许直接从命令行向打印机发送任务。

📌 基本语法与常用选项

lp 命令的基本语法格式如下:

bash 复制代码
lp [选项] [文件]

如果未指定文件名,lp 会接受标准输入,这意味着可以通过管道将其他命令的输出直接发送给 lp 进行打印。

下面的表格汇总了 lp 命令的一些常用选项及其功能:

选项 说明
-d <打印机名> 指定接收打印任务的目标打印机
-n <份数> 设置要打印的份数,例如 -n 3 表示打印3份
-o <打印选项> 设置各种打印选项,功能非常丰富(详见下文)
-P <页码范围> 指定需要打印的页码,例如 -P 1,3-5,16
-H <时间> 指定打印任务开始的时间,可以是 immediate(立即),hold(暂挂)或具体时间如 10:00
-q <优先级> 设置作业优先级(1-100,100为最高)
-t "标题" 为打印任务设置一个标题
-m 打印完成后发送电子邮件通知
-s 静默模式,不报告作业ID

🔧 强大的 -o 打印选项

-o 选项是 lp 命令中最灵活的部分,用于控制打印输出的具体格式和效果。

  • 页面布局与方向

    • -o media=A4:指定纸张大小(如 A4, letter, legal)。
    • -o orientation-requested=4:设置页面方向为横向(landscape)。
    • -o sides=two-sided-long-edge:进行双面打印(长边翻转,类似于书籍)。
  • 多页合并与排版

    • -o number-up=2:在一张纸上打印 2 页内容(也支持 4, 6, 9, 16 等)。
    • -o fit-to-page:将内容缩放以适应纸张大小。
  • 其他实用选项

    • -o page-ranges=1-4,7:指定打印特定页码(与 -P 选项类似)。
    • -o outputorder=reverse:按逆序打印页面,这对于某些打印机出纸顺序很有用。

💡 实用示例与技巧

  1. 基础打印

    bash 复制代码
    lp document.pdf  # 使用默认打印机打印文件
    lp -d HP_LaserJet_1020 report.txt  # 在名为 "HP_LaserJet_1020" 的打印机上打印
    ls -la | lp  # 打印当前目录的详细列表(将标准输入发送给打印机)
  2. 高级打印需求

    bash 复制代码
    # 打印文档的第2-5页和第7页,共打印3份,并设置优先级最高
    lp -P 2-5,7 -n 3 -q 100 document.pdf
    
    # 将PDF文件以A4纸、双面、每张纸2页的方式打印
    lp -o media=A4 -o sides=two-sided-long-edge -o number-up=2 presentation.pdf
    
    # 提交打印任务,但暂挂直到下达指令后再开始打印
    lp -H hold myfile.txt
    # 之后可以使用以下命令释放该任务(假设作业ID为 HP_LaserJet_1020-12)
    lp -i HP_LaserJet_1020-12 -H resume
  3. 管理打印任务

    • 使用 lpstat -p 命令可以列出系统上所有可用的打印机。
    • 使用 lpstat -d 可以查看当前的默认打印机。
    • 使用 lpstat -o 可以查看打印队列中的任务。
    • 使用 cancel <作业ID>lprm <作业ID> 可以取消指定的打印任务。

⚠️ 注意事项

  • 选项的具体支持和行为可能因使用的打印系统(如 CUPS)和打印机型号的不同而略有差异。
  • 如果遇到无法打印的情况,请先检查打印机是否处于就绪状态,以及打印队列是否被暂停。
相关推荐
wanhengidc2 小时前
云手机 高振畅玩不踩坑
运维·服务器·安全·web安全·智能手机
有谁看见我的剑了?2 小时前
linux 添加硬盘后系统识别不到硬盘处理
linux·运维·服务器
JoyCong19982 小时前
ToDesk远程屏幕墙技术白皮书:如何重塑全局运维视界
运维·电脑·远程工作
偶尔上线经常挺尸3 小时前
《100个“反常识”经验15:Nginx 502排查:从应用到内核》
运维·nginx·性能调优·反向代理·502错误·http排错
yc_12244 小时前
用 Visual Studio 远程调试 Linux:从零到流畅的完整指南
linux·ide·visual studio
思茂信息4 小时前
CST软件如何进行参数化扫描?
运维·开发语言·javascript·windows·ecmascript·软件工程·软件需求
计算机安禾4 小时前
【Linux从入门到精通】第31篇:防火墙漫谈——iptables与firewalld防护指南
linux·运维·php
下一页盛夏花开4 小时前
ubuntu 20中安装QT以后出现红色空心断点
linux·运维·ubuntu
金色光环5 小时前
FreeModbus释放底层的 TCP 监听端口
服务器·网络·tcp/ip
sanshanjianke5 小时前
Thunderobot 911ME 笔记本 Linux 风扇控制研究
linux