您当前的位置:首页>>技术中心>>数据恢复文章>>正文
 
FreeBSD handbook中文版11 打印(2)高级打印机设置 A.过滤器
作者: 来源: 日期:2007-6-22 12:25:57  点击次数:

/etc/printcap 文件中的sd 关键词所指定)。这是让过滤程序来做这件事最好的地方,因为
(通常)这里的可用空间会比/tmp 下来得多。
所以,这个过滤程序应该要这么写: 
#!/bin/sh 

# hpdf - Print DVI data on HP/PCL printer 
# Installed in /usr/local/libexec/hpdf 
PATH=/usr/local/bin:$PATH; export PATH 

# Define a function to clean up our temporary files. These exist 
# in the current directory, which will be the spooling directory 
# for the printer. 

cleanup() { 
rm -f hpdf$$.dvi 


# Define a function to handle fatal errors: print the given message 
# and exit 2. Exiting with 2 tells LPD to do not try to reprint the 
# job. 

第35 页FreeBSD 使用手册
fatal() { 
echo “$@” 1>&2 
cleanup 
exit 2 


# If user removes the job, LPD will send SIGINT, so trap SIGINT 
# (and a few other signals) to clean up after ourselves. 

trap cleanup 1 2 15 

# Make sure we are not colliding with any existing files. 

cleanup 

# Link the DVI input file to standard input (the file to print). 

ln -s /dev/fd/0 hpdf$$.dvi || fatal “Cannot symlink /dev/fd/0” 

# Make LF = CR+LF 

printf “\033&k2G” || fatal “Cannot initialize printer” 

# Convert and print. Return value from dvilj2p does not seem to be 
# reliable, so we ignore it. 
第36 页# 
dvilj2p -M1 -q -e- dfhp$$.dvi 

# Clean up and exit 

cleanup 
exit 0 
11.4.1.4.5 自动转换:用过滤程序转换外的另一种选择
上面这些过滤程序完整地建立了你的打印环境,但是使用者们必需自己决定要使用哪一
个过滤程序(对lpr 命令下的参数)。如果你的使用者们并不擅长于使用计算机,要它们自己
选择适当的过滤程序来使用可能会造成它们的困扰。更严重的是,万一使用到不正确的过滤
程序来转换格式,那么可能会让你的打印机浪费许多不必要纸。
除了安装所有的转换用过滤程序外,你也许会想要试试文字过滤程序(默认的过滤程序) 
自动扫描要打印的文件格式,同时自动呼叫其它的转换用过滤程序做适当的转换。像file 
这样的工具对于这方面可能对这会有些帮助。然而,要区分出某些文件格式可能会有点困难
—当然,你也可以提供专门转换这些格式的过滤程序。
FreeBSD ports 里有一个叫做apsfilter 的文字过滤程序可以做文件类型的自动扫描及
转换。它可以分辨出纯文本、PostScript 以及DVI 文件,然后做适当的格式转换后再打出。
11.4.1.5 输出用的过滤程序
LPD spooling 系统还支持一种我们还未介绍的过滤程序:输出用过滤程序。输出用过滤
程序和文字过滤程序一样,只有打印纯文本才使用的,但是它简单多了。如果你用了输出用
过滤程序但是没有用文字过滤程序,那么: 
1. LPD 在一份工作里将只执行一次输出用过滤程序,而不是为每一个文件都执行一
次。
2. LPD 不会提供任何辨认文件开始或结束的信息给输出用的过滤程序。
FreeBSD 使用手册
第37 页FreeBSD 使用手册
3. LPD 不会将使用者的帐户及机器名称传给过滤程序,因此它不能做统计的动作。事
实上,它只有得到两个参数: 
filter-name -wwidth -llength 
其中width 是由打印机设置里的pw 关键词所设置的,而length 是由pl 关键词所设置

本新闻共8页,当前在第7页  1  2  3  4  5  6  7  8  


上一篇:FreeBSD handbook中文版11 打印(1)基本设置
下一篇:FreeBSD handbook中文版11 打印(3)使用打印机
  北京总部: 4006-505-808
  天 津 部: 4006-505-808
  上 海 部: 4006-505-808
  深 圳 部: 4006-505-808
  广 州 部: 4006-505-808
  重 庆 部: 4006-505-808
  南 京 部: 4006-505-808
  其它地区: 4006-505-808
经典案例
中国石油管理局-Oracle数据库恢
中国网通-IBM EXP300磁盘阵列数
大连鸿德经贸有限责任公司-SQL
中国地质环境监测院-HP LH3000
藁城市东街百货-EFS文件解密成
工商银行某省分行-AIX删除LV数
中央电视台新闻评论部-苹果分
promise乔鼎硬盘阵列数据恢复成
麒麟童文化-苹果分区无法打开,
NAS 8100服务器数据恢复成功 
解决方案
raid磁盘阵列OFFLINE后的应急方
磁盘未被格式化,是否格式化数据
误GHOST、误一键恢复灾难应急方
误删除、误格式化数据灾难应急
LINUX FSCK数据出错灾难应急方
北亚数据恢复 - 联系我们 - 关于北亚 - 友情链接 - 网站地图 - RSS聚合 
版权所有 北亚数据恢复中心
全国统一客服热线:4006-505-808
北京总部:北京市海淀区中关村大街11号E世界A座8层832B室