一个终端打印shell程序,可以自动退纸

字体: | 打印

程序代码如下:

clear

echo "请输入要打印的文件名:\c"
read file
            echo "ESC[5i"    #终端进入打印状态
             cat $file       #打印文件
             echo "ESC L"    #打印完后退纸
             echo "ESC[4i"   #终端退出打印状态
             n=1
             echo "\n正在打印>\c"
             while true      #以下循环用于动态显示“正在打印>>>>>”
             do
               sleep 1
               echo ">\c"
               n=`expr $n + 1`
               if [ $n -lt 6 ]
               then
                  continue
               else
               break
             fi
            done  
            echo "\007\n\n打印完成!按任意键返回!!\c"
            any



几点说明:
1、shell程序中,转义字符ESC的编辑输入方法是先按CTRL+V键,再按CTRL+[键,即 ECHO ‘ESC[5i’
中引号中的内容正确的按键顺序应该是:

先按CTRL+V,再按CTRL+[,然后再输入一个[,再输入5i即可。输入完成后屏幕上应显示为^[[5i。

2、程序使用方法:将此脚本程序赋予可执行权限,直接运行即可。然后程序提示“请输入要打印的文件名:”直接输入文件的全路径即可。