Victor G. Petuchov wrote:
>
> > Поясните, кому не в лом, как в сабже фильтр описать?
> > Так как надо ссылку в нем обозначить, чтобы он сначала этот скрипт
> > выполнил, а потом уж печатал?
>
> Лови мой. За правописание не отвечаю но постскрипт на axis печатает
> исправно.
>
> ------------
> hp2:\
> :sd=/var/spool/lpd/lp1:\
> :mx#0:\
> :rm=axis1.solar.com:\
> :rp=pr2:
> axis|axis1.solar.com-pr| Network printer Print server axis1.solar.com:\
> :mx#0:\
> :sd=/var/spool/lpd/axis1.solar.com-pr:\
> :lf=/var/spool/lpd/axis1.solar.com-pr/log:\
> :if=/var/spool/lpd/axis1.solar.com-pr/filter:\
> :cf=/var/spool/lpd/axis1.solar.com-pr/filter:\
> :df=/var/spool/lpd/axis1.solar.com-pr/filter:\
> :lp=/dev/null:
>
> -----------
> теперь filter
> ----------
> #!/bin/sh
>
> DEVICE=ljetplus
> RESOLUTION=300x300
> PAPERSIZE=a4
> SENDEOF=1
> PATH=/bin:/usr/bin
>
> gs -q -sDEVICE=$DEVICE -r$RESOLUTION -sPAPERSIZE=$PAPERSIZE \
> -dNOPAUSE -dSAFER -sOutputFile=- - | lpr -g -P hp2 -
>
> if [ "$SENDEOF" != "" ]; then
> printf "\014"
> fi
>
> exit 0
> -------
> понятно, что filter должен быть выполняемым.
> По подправь под свою модель принтера и как говориться с песнями.
> Да у меня hp2 сетевой если он локальный, то поменяй.
--Victor, thanks
Так я, по большому счету, и делал, тока вот какой-то цикл происходит и в /var/spool/lpd периодически создаются и пропадают файлы, а на принтер ничего не кидается.:-( Приходится сначала килять демона (причем их два, хотя до lpr -Pljk тока один) и удалять эти временные файлы. Потом опять запущать lpd -l. Может что-нибудь с правописанием? В /usr/spool/lpd/errXXX пишет следующее: Unexpected interpreter error 1. Error object: execute0 Хотя по отдельности (ну к примеру сначала создать файл в /tmp, а потом этот файл бросить на принтер) все работает. А вот если и gs и lpr в одном фильтре, то циклит (гад).:-((((( Вот копирую свои выдержки, может подскажите, где не прав. -------------------/etc/printcap----------------------- lj4ps:\ :sd=/var/spool/lpd:\ :mx#0:\ (эту строчку я добавил из Вашего фильтра) :rm=lj4mv:\ :rp=lj4:\ :lf=/var/adm/lpd-errs: ljk|filter:\ :lp=/dev/null:\ :mx#0:\ (эту добавил) :sd=/var/spool/lpd:\ :lf=/var/adm/lpdfl-errs:\ :if=/var/spool/lpd/ljkoi:\ :cf=/var/spool/lpd/ljkoi:\ (эту добавил) :df=/var/spool/lpd/ljkoi: (эту добавил) ---------------------end-------------------------- ---------------/var/spool/lpd/ljkoi--------------- #!/bin/sh SENDEOF=1 # Эту строчку я добавил, т.к. она применяется ниже. # /usr/local/bin/gs -q -sDEVICE=ljet4 -r300x300 -sPAPERSIZE=a4 \ -dNOPAUSE -dSAFER -dNOPLATFONTS -sOutputFile=- - | lpr -Plj4ps - # из lpr я убрал флажок -g, т.к. на моем IRIXе в man по lpr про # данную опцию ни гу-гу # # Все что ниже добавлено, т.к. я не точно понимаю смысл этого условия if [ "$SENDEOF" != "" ]; then printf "\014" #что это за 014, вообще не понимаю fi
exit 0 ---------------------end--------------------------
Собственно это все. Where am I wrong?
-- Sincerely , **********************Igor A. Manokhin******************************** The CAD/CAE Group Leader, Refrigerator Plant "STINOL", Lipetsk, RUSSIA-- end of forwarded message --
--
Kittle