Printing Usage HOWTO 如何使用打印机-2. 打印文档


本节说明在;Linux;环境中如何打印文件、检查列印队列、从列印队列删除打印任务、打印前文档排版和设置打印环境等 。;


2.1;Linux;打印系统的演变;

Linux;打印系统;-;lp;系统;-;是将加利福尼亚大学校方为;UNIX;操作系统的;BSD;版编写的源代码改编而成 。;


2.2;利用;lpr;打印文档;

到目前为止 , 在;Linux;系统中打印文档的最简单方法就是将文档直接送到打印设备打印 。使用;cat;指令就是方法之一 。作为;root , 发送下列指令就可打印文档:;


#;cat;thesis.txt;>;/dev/lp

在这个例子中 , /dev/lp;是实际打印设备的符号连接;-;不论打印机是点阵列印机、激光打印机、排版打印机或图表打印机均可使用这个指令 。(关於符号连接的进一步说明见;ln(1));


由于安全上的考量 , 只有;root;和属於打印监控程式的同一群组的使用者才可书写到打印机 , 使打印机进行打印 。这就是必需使用;lpr、lprm;和;lpq;等指令才能使用打印机的理由 。;

因此 , 使用者必需使用;lpr;列印文档 。lpr;为打印进行所有初始设定 , 然後将任务交给打印监控程序;-;lpd 。这个打印监控程序随即告知打印机如何打印文档 。;

在;lpr;执行过程中 , 它首先将有待打印的文档抄到一个目录(假脱机目录) , 然後让该文档留在该目录中等待;lpd;进行打印 。一旦;lpd;得知有文档等待打印 , 它就自行生成一个备份(编程员称为派生(forking)) 。这个派生的;lpd;监控程序就会打印有待打印的文档 , 同时原;lpd;仍继续等待後面可能发出的打印指令 。通过这种方式 , Linux;系统可同时处理列队打印任务 。;


使用;lpr(1);指令的语法如下:;


$;lpr;[;options;];[;filename;...;]
#
#;(译注:$;lpr;[;选项;];[;文档名;...;])
#

如果;filename;(译注:文档名)没有标示 , lpr;认为将由标准输入口(通常为键盘或另一程式的输出)提供输入 。通过这种方法 , 使用者可将一个程式的输出导入打印假脱机程序 。例如 , ;


$;cat;thesis.txt;|;lpr

或;


$;pr;-l60;thesis.txt;|;lpr

均把运行的结果导入打印机印出 。;

lpr;指令还接受各种打印选项参数 , 使使用者能控制打印方式 。最常用的选项参数有:;-Pprinter;指明用何种打印机、-h;不印突发错页、-s;建立符号连接 , 并且不将文档抄到假脱机目录(便于处理长文档)和;-#num;标明打印份数 。具体使用;lpr;的例子如下:;


$;lpr;-#2;-sP;dj;thesis.txt

这个指令会在假脱机目录内为称为;dj;的打印机建立一个连接;thesis.txt;文档的符号连接 , 然後由;lpd;对其进行打印 。印完之後 , 它还会再打印一次;thesis.txt;(译注:共印两份) 。;

关於;lpr;使用的所有选项参数 , 见;lpr(1) 。;


2.3;利用;lpq;察看打印队列;

使用;lpq;指令可察看当前的打印队列 。如直接使用指令 , 不加选项参数 , 可察看默认打印机的打印队列情况 。;


lpq;的结果有许多用途 。;


$;lpq
lp;is;ready;and;printing;(译注:打印机准备打印 , 下面列出打印信息)
Rank;;;Owner;;;;;;Job;;Files;;;;Total;Size
active;mwf31;;;thesis.txt;;;;;;;682048;bytes


2.4;利用;lprm;取消打印任务;

对任何一个打印系统而言 , 都需要有一个取消打印任务的工具软件 。在;Linux;系统中 , 可用;lprm 。;


$;lprm;-

上述指令取消使用者发出的所有打印指令 。如果只要取消一个打印任务 , 可用;lpq;查明打印任务编号 , 然後将该编号作为参数用于;lprm;指令 。例如:;


$;lprm;31

取消默认打印机第;31;号打印任务;(thesis.txt) 。;

推荐阅读