lpr 命令

lpr命令包括AIX打印子系统lpr和 System V 打印子系统lpr 的信息。

AIX 打印子系统 lpr 命令

用途

排队打印作业。

语法

lpr [ -f ] [ -g ] [ -h ] [ -j ] [ -l ] [ -m ] [ -n ] [ -p ] [ -r ] [ -s ] [ -P Printer ] [ -# NumberCopies ] [ -C Class ] [ -J Job ] [ -T Title ] [ -i [ NumberColumns ] [ -w Width ] [ File ... ]

描述

lpr 命令使用假脱机守护程序在工具可用时打印指定的 File 参数。 如果没有指定文件,lpr 命令从标准输入读取。

标志

描述
-# 编号 生成输出的多个副本,使用 Number 变量作为每个指定文件的副本数目。
-C 指定打印 Class 为裁开页面上的作业分类。
-f 使用一个将每行的首字符解释成标准的 FORTRAN 走纸托架控制字符的过滤器。
-g 假定文件包含标准绘图数据。
-h 禁止裁开页面的打印。
注: 缺省值是打印标题页而不是尾部页。
- i [编号] 缩进输出 Number 个空格。 如果变量 Number 没有给出,缺省使用八个空格。
-j 指定消息Job number is: nnn,其中nnn是分配给标准输出的作业号。 这只发生在提交作业到本地打印队列的情况。
-J 作业 在裁开页面将 Job 变量作为作业名打印。 通常,lpr 命令使用第一个文件的名称。
-l (小写 L)使用允许打印控制字符的过滤器。
-M 在完成假脱机处理后发送邮件。
-n 使用对包含 ditroff(设备独立的 troff)数据的文件进行格式化的过滤器。
-P 打印机 强制输出到 Printer 变量。 如果不指定该标志,会发生下列情况:
  • 如果存在缺省值,lpr 命令使用缺省打印机。
  • 如果设置了 LPDEST 环境变量,那么 lpr 使用由 LPDEST 变量指定的值。 一旦设置就总是使用该值,即使还设置了 PRINTER 变量。
  • 如果设置了 PRINTER 变量而 LPDEST 变量没有设置,那么 lpr 使用由 PRINTER 环境变量指定的值。
    注意:任意目标命令行选项同时覆盖 LPDESTPRINTER 环境变量。
-p 使用 pr 命令格式化文件 (lpr -p很像pr | lpr).
-r 完成假脱机后删除文件。
-s 从命令行指定的文件打印而不是尝试复制它们(这样大的文件可以打印)。 这意味着在打印数据文件之前不能修改或除去它们。 注意,该标志只工作于本地主机(发送到远程打印机主机的文件无论如何都会被复制),并且只和指定的数据文件。 如果 lpr 命令在管道的末尾,那么它不会起作用。
-T 标题 使用 Title 变量而不是文件名作为命令 pr 使用的标题。
-w 数字 使用 Number 变量作为 pr 命令的页面宽度。

安全性

RBAC 用户注意: 此命令可以执行特权操作。 只有特权用户才能执行特权限定的操作。 有关授权和权限的更多信息,请参阅安全中的特权命令数据库。 有关该命令的权限和授权列表,请参阅 "lssecattr命令或 "getcmdattr子命令。

示例

  1. 打印文件的三个副本new.index.c, print.index.c,more.c,请输入:
    lpr  -#3 new.index.c print.index.c more.c
    打印三份new.index.c文件,三个副本print.index.c file,和三份more.c file.
  2. 打印三个文件并置的三个副本new.index.c, print.index.c,more.c,请输入:
    cat new.index.c print.index.c more.c | lpr  -#3
  3. 要打印Operations在分类群发页面上,后跟文件new.index.c,请输入:
    lpr  -C Operations new.index.c
    这会将系统名称 (由主机名返回的名称) 替换为Operations在分类群发页面上。
  4. 要对 MyFile 文件进行排队并返回作业号,请输入:
    lpr -j MyFile

文件

描述
/usr/sbin/ qdaemon 排队守护程序。
/etc/qconfig 排队配置文件。
/etc/qconfig.bin /etc/qconfig 文件的二进制摘要版本。
/var/spool/lpd/qdir/* 排队请求。
/var/spool/lpd/stat/* 关于队列状态的信息。
/var/spool/qdaemon 已排队文件的临时副本。

System V 打印子系统 lpr 命令

用途 (系统 V)

(BSD) 发送作业到打印机。

语法 (System V)

/usr/bin/lpr [ - 打印机] [ -# 副本] [ -C ] [ -J 作业] [ -T 头衔] [ -我 [缩进] ] [ -w 科尔斯] [ -] [ -] [ -] [ -s] [ -filter_option] [文件 ... ]

描述 (系统 V)

lpr 命令转发打印机作业到假脱机区域,以使得工具可用时进行后继打印。 每个打印机作业由每个指定的 file 的副本构成。 假脱机区域由行式打印机假脱机程序 lpsched 管理。 如果没有指定文件 lpr 从标准输入读取。

lp 是首选的接口。

当与一些其他命令一起的时候命令行选项不能与一个单独的参数结合。 命令:
   lpr -fs
不等同于
   lpr -f -s

首先放置 -s 标志,或者将每个选项写为分隔的参数,按预期的建立链接。

lpr-p并不等同于pr | lprlpr-p会将当前日期放在每页的顶部,而不是最后修改的日期。

troff 的字体和 T[E]X 驻留在打印机主机上。 使用本地字体库是不可能的。

打印二进制文件的 lpr 对象。

如果用户 A 使用 su 成为用户 B 并且使用了 /usr/bin/lpr,那么打印机请求将以用户 B 身份输入而不是用户 A。

标志 (System V)

-P 打印机
发送输出到指定的 printer。 否则发送输出到环境变量 PRINTER 中指定的打印机,或者到缺省打印机 lp
-# 副本
指出给每个指定文件生成的副本数。 例如:
   lpr -#3 index.c lookup.c
生成三个 index.c副本,后跟三个 lookup.c副本。 另一方面,
   cat index.c lookup.c | lpr -#3

生成文件并置的三个副本。

-C
在裁开页面按照作业分类打印 class。 例如,
   lpr -C Operations new.index.c

在裁开页面用 Operations 替换了系统名称(由“hostname”返回的名称),并打印文件 new.index.c

-J 作业
在裁开页面按照作业名称打印 job。 通常,lpr 使用第一个文件的名称。
-T 标题
使用 title 而不是 pr所使用的标题的文件名。
-i [indent]
Indent output 缩进 <Space> characters. 默认为八个<空格>字符。
-w
使用 cols 作为 pr 的页面宽度。
-r
在假脱机完成的基础上或者在带 -s 标志打印完成的基础上删除该文件。
-M
在完成的基础上发送邮件。
-h
禁止打印裁开页面。
-s
使用文件的完整路径名(非符号链接)进行打印而不是尝试复制它们。 这意味着在打印数据文件之前不能修改或除去它们。 该标志仅仅阻止进行本地文件的复制。 来自远程主机的作业无论如何都会被复制。 -s 标志只用于指定的数据文件;如果 lpr 命令在管道末尾,数据被复制到假脱机。
过滤选项
以下单字母选项通知行式打印机假脱机程序文件不是标准的文本文件。 从而假脱机守护程序将使用适当的过滤器打印数据。
-p
使用 pr 格式化文件(lpr -p 非常类似于 pr | lpr)。
-l
打印控制符和禁止分页符。
-t
文件包含 troff(cat 照排机)二进制数据。
-n
文件包含来自 ditroff(独立于设备的 troff)的数据。
-d
文件包含来自 tex(Stanford 的 DVI 格式)的数据。
-g
文件包含标准绘图数据,它们由打印机假脱机程序使用的过滤器的例程 plot 生成。
-v
文件包含光栅图象。 打印机必须支持适当的成像模型 (如 PostScript ) 才能打印图像。
-c
文件包含 cifplot 生成的数据。
-f
将每行的首字符解释成标准的 FORTRAN 走纸托架控制字符。

如果未给出 filter_option (并且打印机可以解释 PostScript) ,那么字符串 "%!" 作为文件的前两个字符指示它包含 PostScript 命令。

这些过滤器选项提供了标准用户界面,并且所有选项对所有打印机既不可获取又不可应用。

 

安全性 (System V)

RBAC 用户注意: 此命令可以执行特权操作。 只有特权用户才能执行特权限定的操作。 有关授权和权限的更多信息,请参阅安全中的特权命令数据库。 有关该命令的权限和授权列表,请参阅 "lssecattr命令或 "getcmdattr子命令。

文件 (System V)

/usr/lib/lp/lpsched
System V 行式打印机假脱机程序
/var/spool/lp/tmp/*
假脱机使用的目录
/var/spool/lp/tmp/系统/* -0
假脱机程序控制文件
/var/spool/lp/tmp/系统/*-N
(N 是整数,> 0) 在 "* -0" 文件中指定的数据文件

错误代码 (System V)

lpr: 打印机: unknown printer
在 LP 数据库中没有找到打印机。 通常这是一个输入错误;然而,它可能表示该打印机在系统中不存在。 使用 lpstat -p 来查找原因。
lpr: error on opening queue to spooler
在本地机器上连接到 lpsched 失败。 这通常表示引导时启动的打印机服务器已经死机或挂起。 检查是否打印机假脱机程序守护程序 /usr/lib/lpsched 正在运行。
lpr: 打印机: printer queue is disabled
这表示已使用以下命令来关闭队列:
/usr/etc/lpc disable printer

以防止 lpr 将文件放入队列之中。 当一台打印机将当机很长时间的时候,通过会进行此操作。 打印机可以由特权用户使用 lpc 来再次启动。

lpr: Can't send message to the LP print service
lpr: Can't establish contact with the LP print service
这些表示 LP 打印服务已停止。 请从系统管理员处获取帮助。
lpr: Received unexpected message from LP print service
可能此软件中发生错误。 请从系统管理员处获取帮助。
lpr: There is no filter to convert the file content
使用 lpstat -p -l 命令查找能够直接处理该文件类型的打印机,或向系统管理员咨询。
lpr: cannot access the file
请确定文件名称有效。