lpq - spool queue examination program
lpq [
-a] [
-A] [
-l] [
-L] [
-V]
[
-c] [
-v] [
-P printer] [
-s] [
-t
sleeptime] [
-D debugopt] [
jobid...]
lpq requests a status report from
lpd(8) on the specified printers
or jobs.
lpq invoked without any arguments reports on the printer given
by the default printer (see
-P option). The short (default) format
simply lists the printer, host, and numbers of jobs in the spool queue. When
using the long format (-l option), for each job in a spool queue
lpq
reports the job identifier which is generated from the user's name and
originating host, current rank in the queue, the job number (which may be
supplied to
lprm(1) for removing a specific job), the job description
information, and the total size in bytes. If there is an error or other
problem with the job, this information may be modified to reflect the
problems. In a spool queue, Job ordering is a modified FIFO (First in First
Out), modified by the job class and priority information.
The following options are available.
- -A
- Use authentication specified by the value of the AUTH
environment variable.
-
-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.
-
-P printer
- By default, the destination printer is taken from the
command line 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.
- -V
- Print version information.
- -v
- Dump lpd related information.
- -c
- Clear Screen before output, very usefull with -t
- -a
- List status for all printers (see PRINTER LISTS below)
which have entries for the LPRng client programs in the printcap(5)
database.
- -l
- Increase verbosity of the long display format. A
single -l options selects a short verbose display, multiple -l options
increase the verbosity.
- -L
- Use maximum verbosity for the long display
format.
- -s
- Display a short, single line status summary for each queue
and subqueue.
-
-t sleeptime
- Forces lpq to periodically display the spool queues
and then sleep sleeptime seconds between scans of the queue.
- jobid ... all
- The options are followed by a list of jobids which are used
to select jobs of interest. A jobid can be a user name, a job identifier,
a job number, or a glob based pattern which will be applied to the job
identifiers. The all keyword will display all jobs and is the default
option.
The
lpq will report the status of the spool queue (enabled for spooling,
disabled for unspooling), and the absence of a server if unspooling is
enabled. The
lpc(1) command
lpc start <printer> may be
used to start the server if this is the case.
By default, the destination printer is taken from the command line
dest
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
-a option is used to by to get status for a list of
printers. This list is formed as follows.
- 1)
- The printcap file is scanned for printer entries. Only
entries with names starting with a letter or digit are recognized as valid
queue or printer names.
- 2)
- If the special entry all is present, and it has a
field :all=pr1@host1,pr2@host2,... then the printers pr1,
pr2, ... are used as the printer or queue list.
- 3)
- If there is no all entry, then the original list of
printers found in step 1) is used as the list of printers.
The special case of
lpq -Pall disables the searching of the printcap
database, and simply sends a query to the lpd server for status of printer
all. The
lpd(8) server enumerates the printers in its printcap
file, ignoring any
all entry, and returns status only for printers
which have entries in the
lpd(8) server printcap file.
Finally, the special case
lpq -Ppr@host causes to send a
status request for printer
pr to host
host.
Here is a simple set of rules to use:
Client:
pr1:lp=%P@server
pr2:lp=%P@server
- printer pr1 followed by pr2
pr1:lp=%P@server
pr2:lp=%P@server
all:all=pr2,pr1
- printer pr2 followed by pr1 (all overrides)
Client:
pr1:lp=%P@server
pr2:lp=%P@server
Server:
lp:lp=...
lpq -Pall
- status returned only for printer 'lp'
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
printcap(5) for more
information.
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),
lpr(1),
lprm(1),
printcap(5),
lpd.perms(5),
pr(1).
Patrick Powell <
[email protected]>.
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.
LPRng is a enhanced printer spooler system with functionality similar to the
Berkeley LPR software. The LPRng developer mailing list is
[email protected]; subscribe by visiting
https://lists.sourceforge.net/lists/listinfo/lprng-devel or sending
mail to
[email protected] with the word
subscribe in the body.
The software is available via
http://lprng.sourceforge.net