LP(1) User Commands LP(1)

NAME


lp - submit print request

SYNOPSIS


lp [-c] [-m] [-p] [-s] [-w] [-d destination] [-f form-name]
[-H special-handling] [-n number] [-o option]
[-P page-list] [-q priority-level]
[-S character-set | print-wheel] [-t title]
[-T content-type [-r]] [-y mode-list] [file]...


lp -i request-ID... [-c] [-m] [-p] [-s] [-w]
[-d destination] [-f form-name] [-H special-handling]
[-n number] [-o option] [-P page-list]
[-q priority-level] [-S character-set | print-wheel]
[-t title] [-T content-type [-r]] [-y mode-list]


DESCRIPTION


The lp utility submits print requests to a destination. There are two
formats of the lp command.


The first form of lp prints files (file) and associated information
(collectively called a print request). If file is not specified, lp
assumes the standard input. Use a hyphen (-) with file to specify the
standard input. Files are printed in the order in which they appear
on the command line.


The second form of lp changes print request options. This form of lp
can only be used with print services and protocols that support job
modification. The LP print service allows print requests to be
modified when they are in a queue local to the system that the lp
commands was executed on. The Internet Print Protocol (IPP) allows
job modification on remote ipp print services.


The print request identified by request-ID is changed according to
the printing options specified. The printing options available are
the same as those with the first form of the lp. If the request has
finished printing when the lp command is executed, the change is
rejected. If the request is in the process of printing, it is stopped
and restarted from the beginning (unless the -P option has been
given).


The print client commands locate destination information using the
"printers" database in the name service switch. See nsswitch.conf(5),
printers(5), and printers.conf(5) for details.

OPTIONS


Printers that have a 4.x or BSD-based print server are not configured
to handle BSD protocol extensions. lp handles print requests sent to
such destinations differently (see NOTES).


The following options are supported:

-c
Copies file before printing.

Unless -c is specified, users should not
remove any file before the print request has
completely printed. Changes made to file after
the print request is made but before it is
printed might be reflected in the printed
output. file is linked (as opposed to copied).


-d destination
Prints file on a specific destination. The -d
option is used to set the destination only
when the job is first created. (Note: To move
existing jobs to a different destination, see
lpmove(8).) destination can be either a
printer or a class of printers (see
lpadmin(8)). Specify destination using atomic,
URI-style (scheme://endpoint), or POSIX-style
(server:destination) names. See
printers.conf(5) for more information.


-f form-name
Prints file on form-name. The LP print service
ensures that the form is mounted on the
printer. The print request is rejected if the
printer does not support form-name, if form-
name is not defined for the system, or if the
user is not allowed to use form-name (see
lpforms(8)).


-H special-handling
Prints the print request according to the
value of special-handling. The following
special-handling values are acceptable:

hold
Do not print the print request
until notified. If printing has
already begun, stop it. Other
print requests are placed ahead
of a request that has been put on
hold (held print request) until
the print request is resumed.


resume
Resume a held print request. If
the print request had begun to
print when held, it is the next
print request printed, unless it
is superseded by an immediate
print request.


immediate
Print the print request next. If
more than one print request is
assigned, the most recent print
request is printed next. If a
print request is currently
printing on the desired printer,
a hold request must be issued to
allow the immediate request to
print. The immediate request is
only available to LP
administrators.


-i request-ID
Changes options for the print request
identified by request-ID. There must be a
space between -i and request-ID.

This option applies to jobs that are in a
local queue on a print server. This also
applies to remote queues on when the remote
print server supports IPP with job
modification.


-m
Sends mail after file has printed (see
mail(1)). By default, no mail is sent upon
normal completion of a print request.


-n number
Prints a specific number of copies of file.
Specify number as a digit. The default for
number is 1.


-o option
Specifies printer-dependent options. Specify
several options by specifying -o option
multiple times (-o option -o option -o option
). Printer-dependent options can also be
specified using the -o keyletter once,
followed by a list of options enclosed in
double quotes (-o"option option option").

options take the following forms:

key=value
Associates information with the
request for use by the backend
print service. The keys and
values that can be used are
specific to the backend print
service and queue configuration.


[no]key
Associates boolean information
with the request for use by the
backend print service. The keys
that can be used are specific to
the backend print service and
queue configuration.

The following options are commonly used with
the LP print service:

nobanner

Does not print a banner page with the
request. This option can be disallowed by
the LP administrator.

On a system that is configured with
Trusted Extensions, use of this option
requires the solaris.print.nobanner
authorization.


nofilebreak

Prints multiple files without inserting a
form feed between them.


nolabels

On a system that is configured with
Trusted Extensions, specifies suppression
of page header and footer labels. Use of
this option requires the
solaris.print.unlabeled authorization.


length=numberi | numberc | number

Prints the print request with pages of a
specific length in inches, centimeters, or
number of lines. Append the letter i for
inches or c for centimeters to number.
Indicate the number of lines by specifying
number alone. length=66 indicates a page
length of 66 lines. length=11i indicates a
page length of 11 inches. length=27.94c
indicates a page length of 27.94
centimeters.

This option can not be used with the -f
option.


width=numberi | numberc | number

Prints the print request with pages of a
specific width in inches, centimeters, or
number of columns. Append the letter i for
inches or c for centimeters to number.
Indicate the number of columns by
specifying number alone. width=65
indicates a page width of 65 columns.
width=6.5i indicates a page width of 6.5
inches. width=10c indicates a page width
of 10 centimeters.

This option can not be used with the -f
option.


lpi=number

Prints the print request with the line
pitch set to number lines in an inch. Use
number to specify the number of lines in
an inch.

This option can not be used with the -f
option.


cpi=n|pica|elite|compressed

Prints the print request with the
character pitch set to number characters
in an inch. Use number to specify the
number of characters in an inch. Use pica
to set character pitch to pica (10
characters per inch), or elite to set
character pitch to elite (12 characters
per inch) Use compressed to set character
pitch to as many characters as the printer
can handle. There is no standard number of
characters per inch for all printers; see
the terminfo database (see terminfo(5))
for the default character pitch for your
printer. This option can not be used with
the -f option.


stty=stty-option-list

Prints the request using a list of options
valid for the stty command (see stty(1).
Enclose the list in single quotes (`') if
it contains blanks.


-P page-list
Prints the pages specified in page-list in
ascending order. Specify page-list as a of
range of numbers, single page number, or a
combination of both.

The -P option can only be used if there is a
filter available to handle it; otherwise, the
print request is rejected.


-p
Enables notification on completion of the
print request. Delivery of the notification is
dependent on additional software.


-q priority-level
Assigns the print request a priority in the
print queue. Specify priority-level as an
integer between from 0 and 39. Use 0 to
indicate the highest priority; 39 to indicate
the lowest priority. If no priority is
specified, the default priority for a print
service is assigned by the LP administrator.
The LP administrator can also assign a default
priority to individual users.


-s
Suppresses the display of messages sent from
lp.


-S character-set |
-S print-wheel
Prints the request using the character-set or
print-wheel. If a form was requested and
requires a character set or print wheel other
than the one specified with the -S option, the
request is rejected. Printers using mountable
print wheels or font cartridges use the print
wheel or font cartridge mounted at the time of
the print request, unless the -S option is
specified.

Printers Using Print Wheels: If print wheel is
not one listed by the LP administrator as
acceptable for the printer the request is
rejected unless the print wheel is already
mounted on the printer.

Printers Using Selectable or Programmable
Character Sets: If the -S option is not
specified, lp uses the standard character set.
If character-set is not defined in the
terminfo database for the printer (see
terminfo(5)), or is not an alias defined by
the LP administrator, the request is rejected.


-t title
Prints a title on the banner page of the
output. Enclose title in quotes if it contains
blanks. If title is not not specified, the
name of the file is printed on the banner
page.


-Tcontent-type [-r]
Prints the request on a printer that can
support the specified content-type. If no
printer accepts this type directly, a filter
is used to convert the content into an
acceptable type. If the -r option is
specified, a filter is not used. If -r is
specified, and no printer accepts the content-
type directly, the request is rejected. If the
content-type is not acceptable to any printer,
either directly or with a filter, the request
is rejected.


-w
Writes a message on the user's terminal after
the files have been printed. If the user is
not logged in, then mail is sent instead.


-y mode-list
Prints the request according to the printing
modes listed in mode-list. The allowed values
for mode-list are locally defined.

This option can be used only if there is a
filter available to handle it; otherwise, the
print request is rejected.


OPERANDS


The following operand is supported:

file
The name of the file to be printed. Specify file as a
pathname or as a hyphen (-) to indicate the standard input.
If file is not specified, lp uses the standard input.


USAGE


See largefile(7) for the description of the behavior of lp when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).

ENVIRONMENT VARIABLES


See environ(7) for descriptions of the following environment
variables that affect the execution of lp: LANG, LC_ALL, LC_CTYPE,
LC_MESSAGES, NLSPATH, and PATH.

LC_TIME
Determine the format and contents of date and time strings
displayed in the lp banner page, if any.


LPDEST
Determine the destination. If the LPDEST environment
variable is not set, the PRINTER environment variable
shall be used. The -d dest option takes precedence over
LPDEST. Results are undefined when -d is not specified and
LPDEST contains a value that is not a valid destination
name.


PRINTER
Determine the output device or destination. If the LPDEST
and PRINTER environment variables are not set, an
unspecified output device is used. The -d dest option and
the LPDEST environment variable shall take precedence over
PRINTER. Results are undefined when -d is not specified,
LPDEST is unset, and PRINTER contains a value that is not
a valid device or destination name.


TZ
Determine the timezone used to calculate date and time
strings displayed in the lp banner page, if any. If TZ is
unset or null, an unspecified default timezone shall be
used.


EXIT STATUS


The following exit values are returned:

0
Successful completion.


non-zero
An error occurred.


FILES


/etc/printers.conf
System printer configuration database


$HOME/.printers
User-configurable printer database


ou=printers
LDAP version of /etc/printers.conf


printers.conf.byname
NIS version of /etc/printers.conf


ATTRIBUTES


See attributes(7) for descriptions of the following attributes:


+--------------------+---------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+---------------------+
|CSI | Enabled. See NOTES. |
+--------------------+---------------------+
|Interface Stability | Standard |
+--------------------+---------------------+

SEE ALSO


cancel(1), enable(1), lpstat(1), mail(1), postprint(1), pr(1),
stty(1), lpq(1B), lpr(1B), lprm(1B), nsswitch.conf(5), printers(5),
printers.conf(5), terminfo(5), attributes(7), environ(7),
largefile(7), standards(7), accept(8), lpadmin(8), lpfilter(8),
lpforms(8), lpmove(8), lpsched(8), lpshut(8), lpsystem(8), lpusers(8)

NOTES


CSI-capability assumes that printer names are composed of ASCII
characters.


Print jobs are assumed to contain one type of data. That type of data
is either specified on the command line or autodetected (simple,
PostScript) based on the contents of the first file in the job.


When using the BSD printing protocol to send print requests to a
remote print service, functionality is limited.


Printers that have a 4.x or BSD-based print server are not configured
to handle BSD protocol extensions. lp handles print requests sent to
such printers in the following ways:

1. Print requests with more than 52 filenames are truncated
to 52 files.

2. The -f, -H, -o, -P, -p, -q, -S, -T, and -y options might
require a protocol extension to pass to a print server. If
lp cannot handle the print request, it displays a warning
message.

LP administrators enable protocol extensions by setting a
printer's printer-uri-supported (or bsdaddr) entry in
/etc/printers.conf. Changing the printer-uri-supported
entry in /etc/printers.conf to:

printer-uri-supported=lpd\://server/printers/destination#Solaris


bsdaddr=server,destination,Solaris


Adding Solaris to either of these values causes the lp
command to generate a set of BSD print protocol extensions
that can be processed by a Solaris print server.


As a result of several limitations in the BSD print protocol, it is
recommended that the IPP protocol be used for communication with
print servers.


When IPP is in use, the user is prompted for a passphrase if the
remote print service is configured to require authentication.

February 25, 2017 LP(1)

tribblix@gmail.com :: GitHub :: Privacy