LPR(1) | General Commands Manual | LPR(1)

# NAME

lpr — off line print

# SYNOPSIS

lpr | [-cdfghlmnopqRrstv] [-1234 font] [-# num] [-C class] [-i numcols] [-J job] [-P printer] [-T title] [-U user] [-w num] [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 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.

-c
  The files are assumed to contain data produced by cifplot
-d
  The files are assumed to contain data from tex (DVI format from Stanford).
-f
  Use a filter which interprets the first character of each line as a standard FORTRAN carriage control character.
-g
  The files are assumed to contain standard plot data as produced by the plot routines (see also plot for the filters used by the printer spooler).
-l
  Use a filter which allows control characters to be printed and suppresses page breaks.
-n
  The files are assumed to contain data from ditroff (device independent troff).
-o
  The files are assumed to be in postscript format.
-p
  Use pr(1) to format the files (equivalent to print).
-t
  The files are assumed to contain data from troff(1) (cat phototypesetter commands).
-v
  The files are assumed to contain a raster image for devices like the Benson Varian.

These options apply to the handling of the print job:

-h
  Suppress the printing of the burst page.
-m
  Send mail upon completion.
-P
  Force output to a specific printer. Normally, the default printer is used (site dependent), or the value of the environment variable PRINTER is used.
-q
  Queue the print job but do not start the spooling daemon.
-r
  Remove the file upon completion of spooling or upon completion of printing (with the -s option).
-s
  Use symbolic links. Usually files are copied to the spool directory. 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.

Normally lpr works silently except for diagnostic messages. The following option changes this behavior.

-R
  Writes a message to standard output containing the unique number which is used to identify this job. This number can be used to cancel (see lprm(1)) or find the status (see lpq(1)) of the job.

The remaining options apply to copies, the page display, and headers:

-#num
  The quantity 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. Often a site will disable this feature to encourage use of a photocopier instead.

-[1234] font
  Specifies a font to be mounted on font position i. The daemon will construct a `.railmag` file referencing the font pathname.
-C class
  Job classification to 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.

-i -numcols
  The output is indented by (numcols).
-J job
  Job name to print on the burst page. Normally, the first file's name is used.
-T title
  Title name for pr(1), instead of the file name.
-U user
  User name to print on the burst page, also for accounting purposes. This option is only honored if the real user-id is daemon (or that specified in the printcap file instead of daemon), and is intended for those instances where print filters wish to requeue jobs.
-w num
  Uses num as the page width for pr(1).

# ENVIRONMENT

If the following environment variable exists, it is used by lpr:

PRINTER
  Specifies an alternative default printer.

# FILES

/etc/passwd
  Personal identification.
/etc/printcap
  Printer capabilities data base.
/usr/sbin/lpd
  Line printer daemons.
/var/spool/output/*
  Directories used for spooling.
/var/spool/output/*/cf*
  Daemon control files.
/var/spool/output/*/df*
  Data files specified in "cf" files.
/var/spool/output/*/tf*
  Temporary copies of "cf" files.

# 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(8) 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(8).

# SEE ALSO

lpq(1), lprm(1), pr(1), symlink(2), printcap(5), lpc(8), lpd(8)

# HISTORY

The lpr command appeared in 3BSD.

# BUGS

Fonts for troff(1) and tex reside on the host with the printer. It is currently not possible to use local font libraries.

January 17, 2006 | NetBSD 6.0