Provided by: lprng_3.8.28dfsg.1-1.1ubuntu2_i386 bug
 

NAME

        lpr - off line print
 

SYNOPSIS

        lpr [ -A ] [ -B ] [ -b,l ] [ -C class ] [ -D debugopt ]
             [ -F filterformat ] [ -G ] [ -h ] [ -i indentcols ]
             [ -k ] [ -J job ] [ -K,# copies ]
             [ -m mailTo ] [ -P printer ] [ -r ]
             [ -R remoteAccount ] [ -s ] [ -T title ] [ -U user ]
             [  -V  ]  [  -w  width  ]  [ -X userfile ] [ -Y ] [ -Z options ] [
        -1,2,3,4 font ] [ -- ]
             [ filename ...  ]
 

DESCRIPTION

        Lpr uses a spooling daemon to print the  named  files  when  facilities
        become available.  If no names appear, the standard input is assumed.
 

OPTIONS

        -A   The  authentication  type is set by the value of the AUTH environ‐
             ment variable.
 
        -B   Do filtering of job files by the filters specified by  the  print‐
             cap.   Combine the output of the filtering operation into a single
             job file and then send the single file to the lpd print spooler.
 
        -b, -l
             either of these flags specifies a binary or literal file,  and  no
             (or  minimial) processing is to be done by the print spooling sys‐
             tem.  Printed using the f format filter (:if=... or  :filter=...).
 
        -C class
             Specify  the  job  classification for use on the burst page and to
             set the priority.  Priorities range from A (lowest)  to  Z  (high‐
             est); the default priority is A.  For example,
                  lpr -C B foo.c
             sets the priority/class to B and the file foo.c is printed.
 
        -D debugoptions
             Debugging is controlled using the -D option. This accepts a comma-
             separated list of debugging settings. These settings take  one  of
             two  forms:  facility=value,  or  value  to set an overall default
             value.
 
        -F filterformat
             Filter or format specification.  By default, input is assumed to a
             standard  text file and the f format is used; the output device is
             assmed to be a simple line printer.  Other formats  available  are
             listed  below.   Not all formats may be available on all printers;
             see printcap(5) for details.  Formats are single lower  case  let‐
             ters;  the  following are the valid arguments for -F together with
             the assumed type of data.  For compatibility  with  previous  ver‐
             sions  of  lpr, the format types can be used as options themselves
             (i.e. by omitting the F) except where noted below, a  warning  may
             be issued in such cases.
 
        -G   Similar to the -B option, but only processes individual files.
 
        -h   No banner or header for this job.
 
        -i indentcols
             Indent  input  by  indentcols.   Note that this option is not sup‐
             ported on all printers.
 
        -J jobname
             Specify the job name to print on the burst page; defaults  to  the
             name of files in the job or (STDIN) if input is from a pipe.
 
        -Kcopies, -#copies
             Specify  the number of copies of each file to be printed.  You may
             or may not get the requested number of  copies  depending  on  the
             intelligence of the remote printing system.
 
        -k   lpr  normally  creates  a  temporary  file for the input read from
             stdin before sending it to  the  remote  printer.   The  -k  (kut-
             through)  option  will  simply  copy from STDIN to the destination
             print spooling system.  If you kill the job in the middle of  cre‐
             ation  then  the  partly  transferred file will get printed.  This
             option may not work with very large jobs, non-LPRng  spoolers,  or
             when you have encryption or authentication enabled.
 
        -m mailTo
             Send mail upon unsuccessful completion to user mailTo.  The mailTo
             value  has  been  used  to  do  such  things  as   specify   email
             (user@host),         paging         (page:user@host),         both
             (user@host,page:user@host) and all sorts of other notifier  infor‐
             mation.   See  the  LPRng  HOWTO for details on how this is imple‐
             mented.
 
        -P printer
             By default, the destination printer is taken from the command line
             -P  printer value, then the environment variables PRINTER, LPDEST,
             NPRINTER, NGPRINTER, then first entry in the printcap information,
             and  and  finally the default_printer entry from the configuration
             file, and then the compile time default.
 
        -R remoteAccount
             Specify accounting information to be used by a remote system  that
             prints your output.
 
             This parameter can be used to specify a billing code to be charged
             for the printing.
 
        -r   The DREADED REMOVE AFTER PRINTING option.  Beware,  for  lpr  will
             delete  the  files  after  spooling  them.  Present by demand from
             users for compatibility with other  Berkeley  lpr  implementation,
             but really should NOT be present.
 
        -T  title
             Specify the title used by pr(1); defaults to the file name.
 
        -U username
             The -U option is used to specify a user name for the job.  This is
             available only to ROOT or users listed in  the  allow_user_setting
             configuration  option.  This is obviously a security loophole, but
             it is present to allow systems such as SAMBA  to  submit  jobs  on
             behalf of users.  See Authenticated Transfers below.
 
        -V   Verbose  mode.  Additional -V flags increase verbosity.  Use debug
             flags for extreme verbosity.
 
        -w width
             Specify the page width for printing the job.  -X path User  speci‐
             fied filter for job files.  Processing is done on the client host.
             -Y Make a direct connection to  the  printer  device  and  do  not
             spool.
 
        -Z options
             Pass  the specified options to the print spooler.  Used when addi‐
             tional or specialized information must be provided to the spooler.
 
        OBSOLETE OPTIONS Lower case -c, -d, -g, -n, -t, -v
             Used  to indicate: -c is data produced by cifplot(l), -d is tex(l)
             (DVI format from Stanford), -g is standard plot data  as  produced
             by  the  plot(3X) routines, -n and -t is output from (device inde‐
             pendent) troff, -v a raster image for devices like the Benson Var‐
             ian.   These are obsolete.  These are retained for historical com‐
             patibility, but most of their functionality has been  replaced  by
             the  abilities of the printer support system to determine the file
             type and do the appropriate conversions.
 
        OBSOLETE OPTION -p
             This is obsolete.  This option is retained for historical compati‐
             bility, but this functionality should be implemented on the client
             system before sending the job to the printer.  Use pr(1) to format
             the  files,  then print using f format.  This may not be supported
             on the print system.
 
        OBSOLETE -s
             This flag is included for compatibility  with  other  versions  of
             lpr.   In  these  versions  it  will create a symbolic link to the
             files to be printed.  Lpr now sends files directly to  the  server
             and it is irrelevant.
 
        OBSOLETE OPTIONS -1,2,3,4fontname
             Specify a font to be mounted on font position i for TROFF printing
             (Obsolete).
 

FILENAMES

        By default, if no filenames are specified lpr will read stdin and print
        it.
        The  original  LPR  network protocol defined in RFC1179 did not provide
        for user to server authentication.  This is  now  supported  by  LPRng.
        See  the  LPRng  support documentation for details on its operation and
        support.
 

COMPATIBILITY

        The LPRng version of lpr attempts to  be  functionaly  compatible  with
        common  implementations  of  lpr.  However, there are some commands and
        functionality that are deliberately missing.
 
        -s Symbolic Links
             (Berkeley LPR) This option specified that a symbolic link  to  the
             original  data  file rather than a copy of the data file was to be
             used when spooling jobs.  This opens  up  a  variety  of  security
             problems,  as  well as being ineffective when printing to a remote
             host.
        LPRng supports ultra-lightweight printing by eliminating the need for a
        print  spooler.  This is quite dangerous, but makes the lpr client very
        lightweight.  The -Y command  line  option  and  the  :direct  printcap
        option  enables  lpr  to  connect directly to a specified port or use a
        program to send a job.  This filter also enables client side filtering,
        so  if  there are any filters specified in the printcap entry they will
        be used.  For example:
        lpr -Y -Phost%port file1 file2 ...
         approximately equivalent to:
           for i in file1 file2 ...; do
             ${filter} <$i;
          # ${filter} is filter from printcap
           done  >host%port (TCP/IP connection)
 
        lpr -Y -Phost%port -X userfilter file1 file2 ...
         approximately equivalent to:
           for i in file1 file2 ...; do
             userfilter <$i;
           done  >host%port (TCP/IP connection)
 
        Summary:
           -P host%port    > TCP/IP connection to host%port
           -P /dev/lp      > /dev/lp
           -P ’|/program’  | /program
 
        SPECIAL CASE
        lpr -Y -Ppr@host -X userfilter file1 file2 ...
         approximately equivalent to:
           for i in file1 file2 ...; do
             userfilter <$i >temp.$i;
           done
           lpr -Ppr@host temp.file1 temp.file2
 
        The -B option or the :lpr_bounce is used to filter and  make  a  single
        file out of a set of print files and then forward them.
               lpr -B -Ppr@host
                 approximately equivalent to:
                  lpr -Y -P/tmp/tempfile file1 file2 ...
                  lpr -Ppr@host /tmp/tempfile
 
        You can also use a printcap entry and the :direct options.
               Printcap:
                  lp:direct:lp=h14%9100:remote_support=R
               lpr -Plp file1 file2
                  Same as:
               lpr -Plp -Y -Ph14%9100 file1 file2
 
        The  :remote_support  option is used to prevent the lpq and lpc program
        from attempting to send jobs to the device.
 

ENVIRONMENT

        By default, the destination printer is taken from the command  line  -P
        printer   value,   then  the  environment  variables  PRINTER,  LPDEST,
        NPRINTER, NGPRINTER, then first entry in the printcap information,  and
        and  finally the default_printer entry from the configuration file, and
        then the compile time default.
        The following exit values are returned:
 
        zero (0)       Successful completion.
 
        non-zero (!=0) An error occurred.
        The printer names and other information is obtained by using a printcap
        file or some other database.  The ${HOME}/.printcap file can be used to
        specify user level options and configuration information.   See  print‐
        cap(5) for more information.
 

FILES

        The  files used by LPRng are set by values in the printer configuration
        file.  The following are a commonly used set of default values.
        //etc/lprng/lpd.conf                         LPRng configuration file
        ${HOME}/.printcap                            user printer description file
        //etc/printcap                               printer description file
        //etc/lprng/lpd.perms                        permissions
        /var/run/lprng/lpd                           lock file for queue control
        /var/spool/lpd                               spool directories
        /var/spool/lpd/QUEUE/control                 queue control
        /var/spool/lpd/QUEUE/log                     trace or debug log file
        /var/spool/lpd/QUEUE/acct                    accounting file
        /var/spool/lpd/QUEUE/status                  status file
        lpd.conf(5), lpc(8), lpd(8), checkpc(8), lpq(1),  lprm(1),  checkpc(8),
        printcap(5), lpd.perms(5), pr(1).
 

DIAGNOSTICS

        Most of the diagnostics are self explanatory.
        If you are puzzled over the exact cause of failure,
        set the debugging level on (-D5) and run again.
        The debugging information will
        help you to pinpoint the exact cause of failure.
 

HISTORY

        LPRng  is  a enhanced printer spooler system with functionality similar
        to  the  Berkeley  LPR   software.    The   LPRng   mailing   list   is
        lprng@lprng.com;  subscribe  by sending mail to lprng-request@lprng.com
        with the word subscribe in the body.  The software  is  available  from
        ftp://ftp.lprng.com/pub/LPRng.
 

AUTHOR

        Patrick Powell <papowell@lprng.com>.