實(shí)現(xiàn)Unix終端打印的幾種方法
目前,國(guó)內(nèi)銀行業(yè)大部分計(jì)算機(jī)應(yīng)用系統(tǒng)都在Unix操作系統(tǒng)平臺(tái)上采用終端業(yè)務(wù)數(shù)據(jù)錄入、業(yè)務(wù)數(shù)據(jù)打印方式進(jìn)行前端業(yè)務(wù)處理。筆者實(shí)現(xiàn)Unix終端打印的幾種方法介紹如下:
一、概述
Unix環(huán)境下終端打印是在操作系統(tǒng)的支持下,使用終端自身提供的功能,用命令或程序?qū)崿F(xiàn)Unix終端打印。具體過(guò)程是:在終端上執(zhí)行打印控制命令使終端進(jìn)入打印狀態(tài),并通知打印機(jī)做好準(zhǔn)備,在終端上輸入要打印文件的文件名進(jìn)行打印。
打印完畢,在終端上執(zhí)行打印控制命令使終端退出打印狀態(tài)。
二、打印方法
1.用終端自身提供的熱鍵功能實(shí)現(xiàn)打印。各種類(lèi)型終端都為用戶提供了打印熱鍵,只要按一下打印熱鍵終端就進(jìn)入了打印狀態(tài),一般用cat命令查看要打印文件的文件名即可打印,打印完畢,再按一下打印熱鍵就可退出打印狀態(tài)。如HT-382系列終端的拷貝打印熱鍵是Ctrl-F2。
2.用shell命令實(shí)現(xiàn)Unix終端打印。Unix操作系統(tǒng)提供了交互式的解釋命令語(yǔ)言shell,可以方便地實(shí)現(xiàn)Unix終端打印。首先找到終端打印的控制命令,還以HT-382系列終端為例,進(jìn)入拷貝打印控制命令是ESC[5i,退出拷貝打印控制命令是ESC[4i。可用vi編輯一個(gè)shell命令打印文件如下:
ECHO ‘ESC[5i’ #終端進(jìn)入打印狀態(tài)
CAT $1 #打印文件
ECHO ‘ESC[4i’ #終端退出打印狀態(tài)
在終端上或在程序中執(zhí)行此shell打印命令,后面跟要打印文件的文件名即可打印。
3.用C語(yǔ)言實(shí)現(xiàn)Unix終端打印。同樣以HT-382系列終端為例,用C語(yǔ)言編寫(xiě)Unix終端打印程序如下:
- #include
- main(argc,argv)
- int ?argc;
- char?argv[]
- {
- char ?n;
- printf(“\033\[\5\i”);
- /?終端進(jìn)入打印狀態(tài)?/
- sprintf(n“cat%s”,argv[0]);
- /?送入打印文件名?/
- system(n);/?打印文件?/
- printf(“\033\[\5\i”);
- /?終端退出打印狀態(tài)?/
- }
在使用中只需在此程序后面跟要打印文件的文件名即可打印。
三、幾點(diǎn)注意
1.Unix終端打印前要將終端設(shè)置項(xiàng)中打印機(jī)類(lèi)型項(xiàng)設(shè)置為與終端連接打印類(lèi)型一致。
2.Unix終端打印可以依業(yè)務(wù)要求選擇屏幕打印(只打印屏幕顯示內(nèi)容)、拷貝打印(邊打印邊顯示文件內(nèi)容)、透明打印(只打印,不顯示文件內(nèi)容)。
3.shell打印命令中,轉(zhuǎn)義字符ESC的編輯寫(xiě)入要先按CTRL-V鍵,再按ESC鍵方可寫(xiě)入。
4.C語(yǔ)言打印程序中,控制字符要用8進(jìn)制書(shū)寫(xiě),并且前面加轉(zhuǎn)義字符“\”。如ESC的8進(jìn)制ASCII代碼為33,程序中寫(xiě)做“\033”。
【編輯推薦】