Users may submit print jobs using an LP client programme such as lpr (BSD style) or lp (System V style).
The user can influence the way a job is printed using specific command line options with the lpr or lp command. Available command line options can differ from host to host as each host can have a specific implementation. Not all command line options are meaningful for each printer.
Received jobs are stored in the printer’s spool queue. The data files in the lpd job are processed one by one by the PDL interpreter. All print jobs are stored in the same printer queue, independent of the LPD queue name the user has specified.
The received job properties (copies, username, job name, hostname) are stored with the jobs in the printer queue. This ensures that queue viewing and job removal will work as expected.
Job properties can be part of the LPD protocol, the Job Ticket and can be embedded in the PDL data. For some properties, this can lead to conflicts. This section describes how they are solved.
The number of copies can be specified through the LPD protocol. If its value is larger than 9999, it is ignored and 9999 is used instead. The number of copies can be also specified in the Ticket or the PDL data. However, when the number of copies specified through LPD is larger than one, it overrules the number of copies specified in the ticket or the PDL data.
The user did not specify a number of copies on the LPR command line:
The number of copies specified in the ticket or PDL data is used.
The user specified a number of copies of 1 on the LPR command line:
The number of copies specified in the ticket or PDL data is used.
The user specified a number of copies larger than 1 on the LPR command line:
The number of copies specified through LPD is used.
The username is used to describe the jobs in the list of waiting jobs and the list of scheduled jobs. The username can be provided by LPD, the Ticket and the PDL data. When the username is defined in the PDL data, it is ignored.
The hostname is used in the job identification for the lprm command. The hostname is supplied by the LPR client.
The job name allows the user to identify his/her jobs. This property can come from LPD, PDL data or the Ticket. The job name for each job becomes:
Ticket Job Name if a ticket is provided
LPD job name if the ticket does not specify the job name
The name of the original data file if it is not specified in the ticket or LPD
The LPD Class attribute is ignored.
“-h” option of the lpr command is normally used to suppress the banner page. It is accepted but produces no effect.