- 论坛徽章:
- 0
|
如何实现打印一报表从第几页到第几页的打印?
原帖由 "wgjxnm" 发表:
to admirer
有一报表大概有30页,如果我用lp命令,这30页都全部打印出来。
问题出来了,如果我只打印其中第28页,或者只打印其中的第5页到第10页,怎样来实现?
clear
nawk '$0~ /^L/{print NR}' $1>hh
ender=`nawk 'END{print NR}' hh`
echo "\n\t\t 起始页:[ ]"
echo "\n\t\t 结束页:[ ] 注:最大页号为 $ender"
while true
do
echo "^[[2;34H\c"
read start
if [ "$start" -eq "" ]
then
start=1
fi
echo "^[[4;34H\c"
read end
if [ "$end" -eq "" ]
then
end=$ender
fi
if [ "$start" -gt "$end" ] || [ "$end" -gt "$ender" ]
then
echo "\n\n\t\t\t输入页码超出范围,请重新输入!!!\c"
read a
else
>bb$czy.$start
a=`nawk 'NR=='"$start-1"'{print $0}' hh`
b=`nawk 'NR=='"$end"'{print $0}' hh`
nawk 'NR =='"$a+1"',NR =='"$b"'' $1>>bb.$start
lp bb.$start
cd
exit
fi
done
fi
#^L,^[控制符在UNIX下用CTRL+V+L,CTRL+V替换 |
|