summaryrefslogtreecommitdiff
path: root/man1p/lp.1p
diff options
context:
space:
mode:
Diffstat (limited to 'man1p/lp.1p')
-rw-r--r--man1p/lp.1p388
1 files changed, 388 insertions, 0 deletions
diff --git a/man1p/lp.1p b/man1p/lp.1p
new file mode 100644
index 000000000..4f8649413
--- /dev/null
+++ b/man1p/lp.1p
@@ -0,0 +1,388 @@
+.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved
+.TH "LP" P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual"
+.\" lp
+.SH NAME
+lp \- send files to a printer
+.SH SYNOPSIS
+.LP
+\fBlp\fP \fB[\fP\fB-c\fP\fB][\fP\fB-d\fP \fIdest\fP\fB][\fP\fB-n\fP
+\fIcopies\fP\fB][\fP\fB-msw\fP\fB][\fP\fB-o\fP \fIoption\fP\fB]\fP\fB...\fP
+\fB[\fP\fB-t\fP
+\fItitle\fP\fB][\fP\fIfile\fP\fB...\fP\fB]\fP
+.SH DESCRIPTION
+.LP
+The \fIlp\fP utility shall copy the input files to an output destination
+in an unspecified manner. The default output
+destination should be to a hardcopy device, such as a printer or microfilm
+recorder, that produces non-volatile, human-readable
+documents. If such a device is not available to the application, or
+if the system provides no such device, the \fIlp\fP utility
+shall exit with a non-zero exit status.
+.LP
+The actual writing to the output device may occur some time after
+the \fIlp\fP utility successfully exits. During the portion
+of the writing that corresponds to each input file, the implementation
+shall guarantee exclusive access to the device.
+.LP
+The \fIlp\fP utility shall associate a unique \fIrequest ID\fP with
+each request.
+.LP
+Normally, a banner page is produced to separate and identify each
+print job. This page may be suppressed by
+implementation-defined conditions, such as an operator command or
+one of the \fB-o\fP \fIoption\fP values.
+.SH OPTIONS
+.LP
+The \fIlp\fP utility shall conform to the Base Definitions volume
+of IEEE\ Std\ 1003.1-2001, Section 12.2, Utility Syntax Guidelines.
+.LP
+The following options shall be supported:
+.TP 7
+\fB-c\fP
+Exit only after further access to any of the input files is no longer
+required. The application can then safely delete or
+modify the files without affecting the output operation. Normally,
+files are not copied, but are linked whenever possible. If the
+\fB-c\fP option is not given, then the user should be careful not
+to remove any of the files before the request has been printed
+in its entirety. It should also be noted that in the absence of the
+\fB-c\fP option, any changes made to the named files after the
+request is made but before it is printed may be reflected in the printed
+output. On some implementations, \fB-c\fP may be on by
+default.
+.TP 7
+\fB-d\ \fP \fIdest\fP
+Specify a string that names the destination ( \fIdest\fP). If \fIdest\fP
+is a printer, the request shall be printed only on
+that specific printer. If \fIdest\fP is a class of printers, the request
+shall be printed on the first available printer that is a
+member of the class. Under certain conditions (printer unavailability,
+file space limitation, and so on), requests for specific
+destinations need not be accepted. Destination names vary between
+systems.
+.LP
+If \fB-d\fP is not specified, and neither the \fILPDEST\fP nor \fIPRINTER\fP
+environment variable is set, an unspecified
+destination is used. The \fB-d\fP \fIdest\fP option shall take precedence
+over \fILPDEST ,\fP which in turn shall take
+precedence over \fIPRINTER .\fP Results are undefined when \fIdest\fP
+contains a value that is not a valid destination name.
+.TP 7
+\fB-m\fP
+Send mail (see \fImailx\fP ) after the files have been printed. By
+default, no mail is sent upon
+normal completion of the print request.
+.TP 7
+\fB-n\ \fP \fIcopies\fP
+Write \fIcopies\fP number of copies of the files, where \fIcopies\fP
+is a positive decimal integer. The methods for producing
+multiple copies and for arranging the multiple copies when multiple
+\fIfile\fP operands are used are unspecified, except that each
+file shall be output as an integral whole, not interleaved with portions
+of other files.
+.TP 7
+\fB-o\ \fP \fIoption\fP
+Specify printer-dependent or class-dependent \fIoption\fPs. Several
+such \fIoption\fPs may be collected by specifying the
+\fB-o\fP option more than once.
+.TP 7
+\fB-s\fP
+Suppress messages from \fIlp\fP.
+.TP 7
+\fB-t\ \fP \fItitle\fP
+Write \fItitle\fP on the banner page of the output.
+.TP 7
+\fB-w\fP
+Write a message on the user's terminal after the files have been printed.
+If the user is not logged in, then mail shall be sent
+instead.
+.sp
+.SH OPERANDS
+.LP
+The following operand shall be supported:
+.TP 7
+\fIfile\fP
+A pathname of a file to be output. If no \fIfile\fP operands are specified,
+or if a \fIfile\fP operand is \fB'-'\fP , the
+standard input shall be used. If a \fIfile\fP operand is used, but
+the \fB-c\fP option is not specified, the process performing
+the writing to the output device may have user and group permissions
+that differ from that of the process invoking \fIlp\fP.
+.sp
+.SH STDIN
+.LP
+The standard input shall be used only if no \fIfile\fP operands are
+specified, or if a \fIfile\fP operand is \fB'-'\fP .
+See the INPUT FILES section.
+.SH INPUT FILES
+.LP
+The input files shall be text files.
+.SH ENVIRONMENT VARIABLES
+.LP
+The following environment variables shall affect the execution of
+\fIlp\fP:
+.TP 7
+\fILANG\fP
+Provide a default value for the internationalization variables that
+are unset or null. (See the Base Definitions volume of
+IEEE\ Std\ 1003.1-2001, Section 8.2, Internationalization Variables
+for
+the precedence of internationalization variables used to determine
+the values of locale categories.)
+.TP 7
+\fILC_ALL\fP
+If set to a non-empty string value, override the values of all the
+other internationalization variables.
+.TP 7
+\fILC_CTYPE\fP
+Determine the locale for the interpretation of sequences of bytes
+of text data as characters (for example, single-byte as
+opposed to multi-byte characters in arguments and input files).
+.TP 7
+\fILC_MESSAGES\fP
+Determine the locale that should be used to affect the format and
+contents of diagnostic messages written to standard error and
+informative messages written to standard output.
+.TP 7
+\fILC_TIME\fP
+Determine the format and contents of date and time strings displayed
+in the \fIlp\fP banner page, if any.
+.TP 7
+\fILPDEST\fP
+Determine the destination. If the \fILPDEST\fP environment variable
+is not set, the \fIPRINTER\fP environment variable shall
+be used. The \fB-d\fP \fIdest\fP option takes precedence over \fILPDEST
+\&.\fP Results are undefined when \fB-d\fP is not
+specified and \fILPDEST\fP contains a value that is not a valid destination
+name.
+.TP 7
+\fINLSPATH\fP
+Determine the location of message catalogs for the processing of \fILC_MESSAGES
+\&.\fP
+.TP 7
+\fIPRINTER\fP
+Determine the output device or destination. If the \fILPDEST\fP and
+\fIPRINTER\fP environment variables are not set, an
+unspecified output device is used. The \fB-d\fP \fIdest\fP option
+and the \fILPDEST\fP environment variable shall take
+precedence over \fIPRINTER .\fP Results are undefined when \fB-d\fP
+is not specified, \fILPDEST\fP is unset, and \fIPRINTER\fP
+contains a value that is not a valid device or destination name.
+.TP 7
+\fITZ\fP
+Determine the timezone used to calculate date and time strings displayed
+in the \fIlp\fP banner page, if any. If \fITZ\fP is
+unset or null, an unspecified default timezone shall be used.
+.sp
+.SH ASYNCHRONOUS EVENTS
+.LP
+Default.
+.SH STDOUT
+.LP
+The \fIlp\fP utility shall write a \fIrequest ID\fP to the standard
+output, unless \fB-s\fP is specified. The format of the
+message is unspecified. The request ID can be used on systems supporting
+the historical \fIcancel\fP and \fIlpstat\fP
+utilities.
+.SH STDERR
+.LP
+The standard error shall be used only for diagnostic messages.
+.SH OUTPUT FILES
+.LP
+None.
+.SH EXTENDED DESCRIPTION
+.LP
+None.
+.SH EXIT STATUS
+.LP
+The following exit values shall be returned:
+.TP 7
+\ 0
+All input files were processed successfully.
+.TP 7
+>0
+No output device was available, or an error occurred.
+.sp
+.SH CONSEQUENCES OF ERRORS
+.LP
+Default.
+.LP
+\fIThe following sections are informative.\fP
+.SH APPLICATION USAGE
+.LP
+The \fIpr\fP and \fIfold\fP utilities can be used to
+achieve reasonable formatting for the implementation's default page
+size.
+.LP
+A conforming application can use one of the \fIfile\fP operands only
+with the \fB-c\fP option or if the file is publicly
+readable and guaranteed to be available at the time of printing. This
+is because IEEE\ Std\ 1003.1-2001 gives the
+implementation the freedom to queue up the request for printing at
+some later time by a different process that might not be able to
+access the file.
+.SH EXAMPLES
+.IP " 1." 4
+To print file \fIfile\fP:
+.sp
+.RS
+.nf
+
+\fBlp -c\fP \fIfile\fP
+.fi
+.RE
+.LP
+.IP " 2." 4
+To print multiple files with headers:
+.sp
+.RS
+.nf
+
+\fBpr\fP \fIfile1 file2\fP \fB| lp
+\fP
+.fi
+.RE
+.LP
+.SH RATIONALE
+.LP
+The \fIlp\fP utility was designed to be a basic version of a utility
+that is already available in many historical
+implementations. The standard developers considered that it should
+be implementable simply as:
+.sp
+.RS
+.nf
+
+\fBcat "$@" > /dev/lp
+\fP
+.fi
+.RE
+.LP
+after appropriate processing of options, if that is how the implementation
+chose to do it and if exclusive access could be
+granted (so that two users did not write to the device simultaneously).
+Although in the future the standard developers may add
+other options to this utility, it should always be able to execute
+with no options or operands and send the standard input to an
+unspecified output device.
+.LP
+This volume of IEEE\ Std\ 1003.1-2001 makes no representations concerning
+the format of the printed output, except that
+it must be "human-readable" and "non-volatile". Thus, writing by default
+to a disk or tape drive or a display terminal would
+not qualify. (Such destinations are not prohibited when \fB-d\fP \fIdest\fP,
+\fILPDEST ,\fP or \fIPRINTER\fP are used,
+however.)
+.LP
+This volume of IEEE\ Std\ 1003.1-2001 is worded such that a "print
+job" consisting of multiple input files, possibly
+in multiple copies, is guaranteed to print so that any one file is
+not intermixed with another, but there is no statement that all
+the files or copies have to print out together.
+.LP
+The \fB-c\fP option may imply a spooling operation, but this is not
+required. The utility can be implemented to wait until the
+printer is ready and then wait until it is finished. Because of that,
+there is no attempt to define a queuing mechanism
+(priorities, classes of output, and so on).
+.LP
+On some historical systems, the request ID reported on the STDOUT
+can be used to later cancel or find the status of a request
+using utilities not defined in this volume of IEEE\ Std\ 1003.1-2001.
+.LP
+Although the historical System V \fIlp\fP and BSD \fIlpr\fP utilities
+have provided similar functionality, they used different
+names for the environment variable specifying the destination printer.
+Since the name of the utility here is \fIlp\fP,
+\fILPDEST\fP (used by the System V \fIlp\fP utility) was given precedence
+over \fIPRINTER\fP (used by the BSD \fIlpr\fP
+utility). Since environments of users frequently contain one or the
+other environment variable, the \fIlp\fP utility is required
+to recognize both. If this was not done, many applications would send
+output to unexpected output devices when users moved from
+system to system.
+.LP
+Some have commented that \fIlp\fP has far too little functionality
+to make it worthwhile. Requests have proposed additional
+options or operands or both that added functionality. The requests
+included:
+.IP " *" 3
+Wording \fIrequiring\fP the output to be "hardcopy"
+.LP
+.IP " *" 3
+A requirement for multiple printers
+.LP
+.IP " *" 3
+Options for supporting various page-description languages
+.LP
+.LP
+Given that a compliant system is not required to even have a printer,
+placing further restrictions upon the behavior of the
+printer is not useful. Since hardcopy format is so application-dependent,
+it is difficult, if not impossible, to select a
+reasonable subset of functionality that should be required on all
+compliant systems.
+.LP
+The term \fIunspecified\fP is used in this section in lieu of \fIimplementation-defined\fP
+as most known implementations would
+not be able to make definitive statements in their conformance documents;
+the existence and usage of printers is very dependent on
+how the system administrator configures each individual system.
+.LP
+Since the default destination, device type, queuing mechanisms, and
+acceptable forms of input are all unspecified, usage
+guidelines for what a conforming application can do are as follows:
+.IP " *" 3
+Use the command in a pipeline, or with \fB-c\fP, so that there are
+no permission problems and the files can be safely deleted
+or modified.
+.LP
+.IP " *" 3
+Limit output to text files of reasonable line lengths and printable
+characters and include no device-specific formatting
+information, such as a page description language. The meaning of "reasonable"
+in this context can only be answered as a
+quality-of-implementation issue, but it should be apparent from historical
+usage patterns in the industry and the locale. The \fIpr\fP and \fIfold\fP
+utilities can be used to achieve
+reasonable formatting for the default page size of the implementation.
+.LP
+.LP
+Alternatively, the application can arrange its installation in such
+a way that it requires the system administrator or operator
+to provide the appropriate information on \fIlp\fP options and environment
+variable values.
+.LP
+At a minimum, having this utility in this volume of IEEE\ Std\ 1003.1-2001
+tells the industry that conforming
+applications require a means to print output and provides at least
+a command name and \fILPDEST\fP routing mechanism that can be
+used for discussions between vendors, application writers, and users.
+The use of "should" in the DESCRIPTION of \fIlp\fP clearly
+shows the intent of the standard developers, even if they cannot mandate
+that all systems (such as laptops) have printers.
+.LP
+This volume of IEEE\ Std\ 1003.1-2001 does not specify what the ownership
+of the process performing the writing to the
+output device may be. If \fB-c\fP is not used, it is unspecified whether
+the process performing the writing to the output device
+has permission to read \fIfile\fP if there are any restrictions in
+place on who may read \fIfile\fP until after it is printed.
+Also, if \fB-c\fP is not used, the results of deleting \fIfile\fP
+before it is printed are unspecified.
+.SH FUTURE DIRECTIONS
+.LP
+None.
+.SH SEE ALSO
+.LP
+\fImailx\fP
+.SH COPYRIGHT
+Portions of this text are reprinted and reproduced in electronic form
+from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
+-- Portable Operating System Interface (POSIX), The Open Group Base
+Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of
+Electrical and Electronics Engineers, Inc and The Open Group. In the
+event of any discrepancy between this version and the original IEEE and
+The Open Group Standard, the original IEEE and The Open Group Standard
+is the referee document. The original Standard can be obtained online at
+http://www.opengroup.org/unix/online.html .