当前位置:操作系统 > Unix/Linux >>

FreeBSDhandbook中文版11打印(3)

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]

  (standard input) 1635 bytes

  mary: 3rd [job 011rose]

  /home/orchid/mary/research/venus/alpha-regio/mapping 78519 bytes

  11.5.3 删除打印工作

  如果你改变主意不想打印你的工作了,你可以用lprm 命令把他们从打印队列中删除。通常你也可以用lprm 把一个正在处理的工作删除,不过可能还是会打印出部分或是全部的文件。

  要从默认打印机里删除工作,首先,用lpq 找出工作代码,然后输入:

  % lprm job-number

  如果要从指定的打印机删除工作,那么用-P 参数。下列的命令从打印机bamboo 的队列中删除工作号码为10 的工作:

  % lprm -P bamboo 10

  lprm 命令有一些常用的用法:

  lprm -

  将(默认打印机)里所有属于你的工作都删除。

  % lprm -P rattan -

  lprm user

  将(默认打印机)里所有属于使用者user 的工作皆删除。只有超级使用者可以删除其它人的工作,你只能删除你自己的工作。

  lprm

  若不指定工作号码、使用者名称或是- ,lprm 将删除目前默认打印机正在处理的工作,但前提是这个工作必需是属于你的。超级使用者可以删除任何目前正在处理的工作。若使用-P 参数配合上述的常用用法,则上述的动作将对指定的打印机动作而不是对默认打印机。下列的命令将会删除目前使用者在打印机rattan 队列中的所有工作:

  注意: 如果你使用的是网络打印机,lprm 将只允许你从输出工作的机器删除该工作。

  第63 页FreeBSD 使用手册

  下面这些命令可以说明这个概念:

  % lpr -P rattan myfile

  % rlogin orchid

  % lpq -P rattan

  Rank Owner Job Files Total Size

  active seeyan 12 ... 49123 bytes

  2nd kelly 13 myfile 12 bytes

  % lprm -P rattan 13

  rose: Permission denied

  % logout

  % lprm -P rattan 13

  dfA013rose dequeued

  cfA013rose dequeued

  11.5.4 在纯文字之外:打印参数

  lpr 命令提供控制格式输出、转换图形及其它文件格式、一次打出多份、工作处理方式等参数。这一节将一一介绍。

  11.5.4.1 格式输出与转换参数

  下列的lpr 命令控制文件输出的格式。如果你的打印工作里没有纯文字或是你希望纯文字通过lpr 处理后以特定的格式输出时,你可以使用这些参数。

  举例来说,下面的命令从叫做bamboo 的打印机将DVI 文件(由TeX 排版系统产生)

  fish-report.dvi 打出:

  % lpr -P bamboo -d fish-report.dvi

  这些参数将套用这个工作里的每个文件,所以你不能把DVI 和ditroff 文件在同一个工作里一起处理,而要分两次工作用不同的转换参数。

  注意: 这些参数除了-p 和-T 需要为指定的打印机安装转换的过滤程序外,其它的都不用。举例来说,参数-d 需要安装DVI 转换过滤程序。转换用的过滤程序这一节有较详细的说明。

  c

  第64 页d

  f

  g

  i number

  l

  n

  p

  T title

  t

  v

  下面是一个以默认打印机打印格式化过的ls manual page 的例子:zcat 命令将ls 原始数据解压缩并传送给troff 命令,将该数据格式化后以GNU troff 格式输出给lpr 送给LPD spooler 处理。因为我们在使用lpr 命令时使用了-t 参数,所以spooler在打印时会把GNU troff 转换成默认打印机所能了解的格式。将输出缩进number 个字符。如果你省略number,则缩进8 个字符。这个参数只有在某些转换用的过滤程序上有效。原封不动的打出文字数据,包括控制字符。打印ditroff (device independent troff) 数据。在打印之前以pr 格式化输出。请参见pr 以取得更多的信息。以title 取代pr header 中的文件名。这个参数只有在配合-p 参数使用时才有效。

  打印troff 数据。

  打印raster 数据。

  % zcat /usr/share/man/man1/ls.1.gz | troff -t -man | lpr -t

  打印cifplot 文件。

  打印DVI 文件。

  打印FORTRAN 文本文件

  打印plot 数据。

  注释: 请不要在-i 和数字之间加上空白

  FreeBSD 使用手册

  第65 页11.5.4.2 工作处理方式参数

  # copies

  m

  s

  r

  11.5.4.3 Header Page 参数

  这些参数就没有作用了。请参见Header Pages 这一节以了解如何设定header pages。

  1. C text

  将同一工作里的每个文件都打出copies 份。系统管理员可以将这个参数关闭,以减低打印机的障碍并鼓励使用复印机。请参见限制打印多份这一节的说明。

  这个例子将会从默认的打印机打出三份parser.c,然后打出三份parser.h:

  % lpr -#3 parser.c parser.h

  完成打印工作后,便通知使用者。若使用这个参数,当打印工作完成后,LPD 系统将会写信给你。在这封信中将
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,