3 FreeBSD handbook中文版 11 打印 使用打印机

目录

11.5 使用打印机
11.6 标准spooler 之外的选择

=============================================================

11.5 使用打印机
这一节将告诉你如何在FreeBSD 下使用打印机 。这里有份使用者等级命令的概述 。
lpr
打印工作
lpq
检查打印机队列
将工作从打印机队列中删除
lprm
也有系统维护使用的命令 , lpc , 用来控制打印机及其队列 。在管理打印机这一节里有
更详细的说明 。
lpr , lprm 和lpq 这三个命令都接收-P printer-name 这个指定在/etc/printcap 文件里设定
的打印机/队列的参数 。允许你对不同的打印机做要求、删除 , 以及检查工作 。如果你没有
使用-P 参数 , 那么这些命令将使用PRINTER 环境变量所指定的打印机 。若你也没有
PRINTER 环境变量 , 那么这些命令则会对别名为lp 的打印机指定动作 。
此后 , 默认打印机指的就是以PRINTER 环境变量设定的打印机或是当lp 环境变量不存
在时 , 别名为lp 的打印机 。
11.5.1 打印工作
要打印文件 , 输入:
% lpr filename ...
这将把所有列出的文件以默认打印机打印 。如果你没有指定任何文件 , 那么lpr 将会从
标准输入读入资料 。下面这个例子将会打出一些重要的系统文件:
% lpr /etc/host.conf /etc/hosts.equiv
若要指定以特定的打印机输出 , 输入:
% lpr -P printer-name filename ...
下面这个例子会将当前目录下的文件列表从名为rattan 打印机输出:
% ls -l | lpr -P rattan
因为lpr 命令之后没有指定任何一个文件 , lpr 将会从标准输入读入资料以打印出来 , 即
由ls -l 命令所产生的输出 。
第61 页FreeBSD 使用手册
lpr 命令有许多参数如控制输出格式、套用文件转换、一次打印出多份 , 等等 。请参看
打印参数这一节里有更详细的说明 。
11.5.2 检查打印工作
当你使用lpr 打印时 , 一起送到LPD spooling 系统的资料称为一个“打印工作” 。每一
台打印机都有一个打印工作队列 , 而你的打印工作和其它的打印工作一样在队列里等待打
印 。打印机会将先打印先送达的工作 。
要显示默认打印机的队列 , 输入lpq 即可 。若要指定打印机 , 请指定-P 参数 。例如
% lpq -P bamboo
这个命令会显示叫做bamboo 的打印机队列 。这里有一份lpq 命令的输出例子:
bamboo is ready and printing
Rank Owner Job Files Total Size
active kelly 9 /etc/host.conf, /etc/hosts.equiv 88 bytes
2nd kelly 10 (standard input) 1635 bytes
3rd mary 11 ... 78519 bytes
上面显示一共有三个工作在bamboo 的队列里 。第一个工作由使用者kelly 送出 , “工作
代码”为9 。每一个工作都会有个唯一的工作代码 。通常你可以忽略工作代码 , 但是如果你
要取消某个工作时 , 你就会需用知道工作号码 。详情请参看删除队列这一节 。
工作号码9 里包含了两个文件 。用lpr 送多个文件将会被视为同一个工作 。这是目前正
在处理的工作(注意“Rank”栏标示的active) , 即打印机现在应该就在打印这个工作 。第二
个工作的资料是用lpr 从标准输入接收资料的 。而第三个工作是由使用者mary 送出的 。这
是一个较大的工作 。而她要打印的文件因为太长而放不下 , 所以lpq 命令只显示三个点 。
lpq 最前面的输出通常可以看出打印机现在在做什么(至少是LPD 觉得打印机现在应该是在
做什么) 。
lpq 命令可以使用-l 参数以得到更详细的列表 。这里有一个lpq -l 的输出范例:
waiting for bamboo to become ready (offline ?)
kelly: 1st [job 009rose]
/etc/host.conf 73 bytes
/etc/hosts.equiv 15 bytes
第62 页FreeBSD 使用手册
kelly: 2nd [job 010rose]

推荐阅读