On Sat, 10 Jan 2004 14:31, pixfBSD wrote:> #!/bin/sh
> #
> # hpif - Simple text input filter for lpd for HP-PCL based printers
> # Installed in /usr/local/libexec/hpif2
> #
> # Simply copies stdin to stdout. Ignores all filter arguments.
> # Tells printer to treat LF as CR+LF. Ejects the page when done.
>
> printf "\033&k2G" && cat && printf
"\033&l0H" | sed -e 's/@PJL SET
> DATE=[0-3][0-9]-[01][0-9]-20[0-9][0-9]/@PJL SET DATE=01-12-2001/g'
&&
> exit 0
> exit 2
>
> Thanks to the suggestion of the sed syntax I've tried a few renditions
> of this script. (Sorry I forget who was the kind person with this
> syntax) I've been through a reload and could have sworn I had a backup
> of my mail directory :-P doh!
>
> I've put the sed part after first ""printf
"\033&k2G" && sed -e 's/@PJL
> SET DATE=[0-3][0-9]-[01][0-9]-20[0-9][0-9]/@PJL SET DATE=01-12-2001/g'
> ..."" I've even tried piping it after the first printf. It
still
> doesn't change the date on the dfA009<example.file>.
This was my suggestion!
(I thought you had disappeared into oblivion ;-) ).
>
> If I sed -e 's/@PJL SET DATE=[0-3][0-9]-[01][0-9]-20[0-9][0-9]/@PJL SET
> DATE=01-12-2001/g' dfA009<example.file> >
dfA009<newtest.file>. It does
> change the line just fine.
>
Then maybe sed is not in the path as seen by lpd.
Try a full path: i.e. /usr/bin/sed in place of sed.
I should have thought of this possibility in the first place.
(I believe the 'cat' should be superfluous)
For the record, my original suggestion was:
printf "\033&k2G" && sed -e 's/@PJL SET
DATE=[0-3][0-9]-[01][0-9]-20[0-9][0-9]/@PJL SET DATE=01-12-2000/g'
&& printf "\033&l0H" && exit 0
Malcolm Kay