Sponsored Content
Full Discussion: System V printing filter
Top Forums Shell Programming and Scripting System V printing filter Post 303025400 by Ken_Snauffer on Thursday 1st of November 2018 02:25:06 PM
Old 11-01-2018
System V printing filter

First, please excuse my apparent lack of attempt as this is NOT the case. I have attempted to research this for hours and realize I am way out of my league. I am not a programmer, especially in Unix.

I have an old Alpha Unix system with a program that prints to a network printer using the LPR command. Since no one has access to the source code or compiler anymore, re-writing the program seems out of the question. I believe what I am looking for is an if script that takes the standard text being sent to the printer, determines if it should actually print, and prints to the printer or prints to NULL.

In more explanation, the program prints all standard text. 3/4+ of this text is operational codes that mean nothing to anyone here and therefore really do not need printed. The rest of the text is needed and should be printed. All of this text needing printed ALWAYS starts of with the first line exactly equal to " Manual Base Iron Staging Moves " followed by several lines of important information. You may be able to use just the word Manual as the compare word. If the first word is NOT Manual, then the entire print job can be sent to NULL. If it is, then it should be directed to the printer.

AKA:
if print job starts with Manual
then print entire job to printer @icsp1/9100: as defined below
else send print job to Null

Printcap file entry is:

Code:
lp1|1|p1|P1|ctllpr|print1:\
	:af=/usr/adm/lp1acct:\
	:br#9600:\
	:ct=tcp:\
	:fc#0177777:\
	:fs#03:\
	:lf=/usr/adm/lp1err:\
	:lp=@icsp1/9100:\
	:mx#0:\
	:pl#66:\
	:pw#80:\
	:rw:\
	:sd=/usr/spool/lpd1:\
	:sf:\
	:sh:\
	:xc#0177777:\
	:xf=/usr/lbin/xf:\
	:xs#044000:\
	:of=/usr/lbin/pcfof +Cgeneric_text.pcf:\
	:if=/usr/lbin/pcfof +Cgeneric_text.pcf:

If any other information is required, please ask.

Moderator's Comments:
Mod Comment edit by bakunin: Please use CODE-tags, like the ones i have edited in for you. Thank you.

Last edited by bakunin; 11-02-2018 at 12:47 AM..
 

5 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

how to configure the lp system to filter files passed to it

I registered a printer hp123 on Sun Solaris Server. I think my printer is expecting a carriage return and linefeed combination at the end of each line (DOS standard), but unix files only have linefeeds at the end of each line. How can I configure the lp system to filter files passed to it?... (1 Reply)
Discussion started by: simt
1 Replies

2. AIX

printing system with the command lp -d

Hello.. Plz, Any one can help me ? when I execute a printing system with the command lp -d<name of printer>, no result with all printers. I have verified the three processes : qdaemon, lpd, writesrv (No problem). thank's (0 Replies)
Discussion started by: okbainf
0 Replies

3. Shell Programming and Scripting

">" used in system() is not printing into file

I have a problem with the following skript in awk. cat runde.txt |awk '{ if ($5==2) { dataname_v=$1 "_" $4 "_adjust.rad befehl1="gensurf seitenwand... (17 Replies)
Discussion started by: ergy1983
17 Replies

4. Solaris

Solaris printing system migration

Hello folks, I'm currently working on migration of printing system from one server to another (namely from Sol 9 to Sol 10). I would like ask if is possible to manage migration via simple copying /etc/printers.conf file and folder /etc/lp to the new server??? I'm not sure if printers... (2 Replies)
Discussion started by: brusell
2 Replies

5. Shell Programming and Scripting

Filter ONLY lines with non-printing charaters

I have a file contains data with non-printing characters. i have used cat -v filename to display whole data with non-printing characters also. However, i need lines with non-printing characters into seperate file. My file is huge and looks like i have to manully find lines using cat -v filename |... (3 Replies)
Discussion started by: JSKOBS
3 Replies
LPR(1)							      General Commands Manual							    LPR(1)

NAME
lpr - off line print SYNOPSIS
lpr [ -Pprinter ] [ -#num ] [ -C class ] [ -J job ] [ -T title ] [ -i [ numcols ]] [ -1234 font ] [ -wnum ] [ -pltndgvcfrmhs ] [ name ... ] DESCRIPTION
Lpr uses a spooling daemon to print the named files when facilities become available. If no names appear, the standard input is assumed. The -P option may be used to force output to a specific printer. Normally, the default printer is used (site dependent), or the value of the environment variable PRINTER is used. The following single letter options are used to notify the line printer spooler that the files are not standard text files. The spooling daemon will use the appropriate filters to print the data accordingly. -p Use pr(1) to format the files (equivalent to print). -l Use a filter which allows control characters to be printed and suppresses page breaks. -t The files are assumed to contain data from troff(1) (cat phototypesetter commands). -n The files are assumed to contain data from ditroff (device independent troff). -d The files are assumed to contain data from tex(l) (DVI format from Stanford). -g The files are assumed to contain standard plot data as produced by the plot(3X) routines (see also plot(1G) for the filters used by the printer spooler). -v The files are assumed to contain a raster image for devices like the Benson Varian. -c The files are assumed to contain data produced by cifplot(l). -f Use a filter which interprets the first character of each line as a standard FORTRAN carriage control character. The remaining single letter options have the following meaning. -r Remove the file upon completion of spooling or upon completion of printing (with the -s option). -m Send mail upon completion. -h Suppress the printing of the burst page. -s Use symbolic links. Usually files are copied to the spool directory. The -C option takes the following argument as a job classification for use on the burst page. For example, lpr -C EECS foo.c causes the system name (the name returned by hostname(1)) to be replaced on the burst page by EECS, and the file foo.c to be printed. The -J option takes the following argument as the job name to print on the burst page. Normally, the first file's name is used. The -T option uses the next argument as the title used by pr(1) instead of the file name. To get multiple copies of output, use the -#num option, where num is the number of copies desired of each file named. For example, lpr -#3 foo.c bar.c more.c would result in 3 copies of the file foo.c, followed by 3 copies of the file bar.c, etc. On the other hand, cat foo.c bar.c more.c | lpr -#3 will give three copies of the concatenation of the files. The -i option causes the output to be indented. If the next argument is numeric, it is used as the number of blanks to be printed before each line; otherwise, 8 characters are printed. The -w option takes the immediately following number to be the page width for pr. The -s option will use symlink(2) to link data files rather than trying to copy them so large files can be printed. This means the files should not be modified or removed until they have been printed. The option -1234 Specifies a font to be mounted on font position i. The daemon will construct a .railmag file referencing /usr/share/vfont/name.size. FILES
/etc/passwd personal identification /etc/printcap printer capabilities data base /usr/sbin/lpd line printer daemon /usr/spool/* directories used for spooling /usr/spool/*/cf* daemon control files /usr/spool/*/df* data files specified in "cf" files /usr/spool/*/tf* temporary copies of "cf" files SEE ALSO
lpq(1), lprm(1), pr(1), symlink(2), printcap(5), lpc(8), lpd(8) DIAGNOSTICS
If you try to spool too large a file, it will be truncated. Lpr will object to printing binary files. If a user other than root prints a file and spooling is disabled, lpr will print a message saying so and will not put jobs in the queue. If a connection to lpd on the local machine cannot be made, lpr will say that the daemon cannot be started. Diagnostics may be printed in the daemon's log file regarding missing spool files by lpd. BUGS
Fonts for troff and tex reside on the host with the printer. It is currently not possible to use local font libraries. 4th Berkeley Distribution October 22, 1996 LPR(1)
All times are GMT -4. The time now is 09:55 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy