NAME
lpc
—
line printer control program
SYNOPSIS
lpc |
[command [argument ...]] |
DESCRIPTION
Thelpc
utility is used by the system administrator to
control the operation of the line printer system. For each line printer
configured in /etc/printcap,
lpc
may be used to:
- disable or enable a printer,
- disable or enable a printer's spooling queue,
- rearrange the order of jobs in a spooling queue,
- find the status of printers, and their associated spooling queues and printer daemons,
- change the status message for printer queues (the status message may be seen by users as part of the output of the lpq(1) utility).
Without any arguments, lpc
will prompt for
commands from the standard input. If arguments are supplied,
lpc
interprets the first argument as a command and
the remaining arguments as parameters to the command. The standard input may
be redirected causing lpc
to read commands from
file. Commands may be abbreviated; the following is the list of recognized
commands.
?
[command ...]help
[command ...]- Print a short description of each command specified in the argument list, or, if no argument is given, a list of the recognized commands.
abort
{all
| printer}- Terminate an active spooling daemon on the local host immediately and then disable printing (preventing new daemons from being started by lpr(1)) for the specified printers.
bottomq
printer [jobspec ...]- Take the specified jobs in the order specified and move them to the bottom of the printer queue. Each jobspec can match multiple print jobs. The full description of a jobspec is given below.
clean
{all
| printer}- Remove any temporary files, data files, and control files that cannot be
printed (i.e., do not form a complete printer job) from the specified
printer queue(s) on the local machine. This command will also look for
core files in spool directory for each printer
queue, and list any that are found. It will not remove any
core files. See also the
tclean
command. disable
{all
| printer}- Turn the specified printer queues off. This prevents new printer jobs from being entered into the queue by lpr(1).
down
{all
| printer ...}-msg
message ...down
{all
| printer} message ...- Turn the specified printer queue off, disable printing and put
message in the printer status file. When specifying
more than one printer queue, the
-msg
argument is required to separate the list of printers from the text that will be the new status message. The message doesn't need to be quoted, the remaining arguments are treated like echo(1). This is normally used to take a printer down, and let other users find out why it is down (the lpq(1) utility will indicate that the printer is down and will print the status message). enable
{all
| printer}- Enable spooling on the local queue for the listed printers. This will allow lpr(1) to put new jobs in the spool queue.
exit
quit
- Exit from
lpc
. restart
{all
| printer}- Attempt to start a new printer daemon. This is useful when some abnormal condition causes the daemon to die unexpectedly, leaving jobs in the queue. lpq(1) will report that there is no daemon present when this condition occurs. If the user is the super-user, try to abort the current daemon first (i.e., kill and restart a stuck daemon).
setstatus
{all
| printer}-msg
message ...- Set the status message for the specified printers. The
-msg
argument is required to separate the list of printers from the text that will be the new status message. This is normally used to change the status message when the printer queue is no longer active after printing has been disabled, and you want to change what users will see in the output of the lpq(1) utility. start
{all
| printer}- Enable printing and start a spooling daemon for the listed printers.
status
{all
| printer}- Display the status of daemons and queues on the local machine.
stop
{all
| printer}- Stop a spooling daemon after the current job completes and disable printing.
tclean
{all
| printer}- This will do a test-run of the
clean
command. All the same checking is done, but the command will only print out messages saying what a similarclean
command would do if the user typed it in. It will not remove any files. Note that theclean
command is a privileged command, while thetclean
command is not restricted. topq
printer [jobspec ...]- Take the specified jobs in the order specified and move them to the top of the printer queue. Each jobspec can match multiple print jobs. The full description of a jobspec is given below.
up
{all
| printer}- Enable everything and start a new printer daemon. Undoes the effects of
down
.
Commands such as topq
and
bottomq
can take one or more
jobspec to specify which jobs the command should
operate on. A jobspec can be:
- a single job number, which will match all jobs in the printer's queue which have the same job number. Eg: 17,
- a range of job numbers, which will match all jobs with a number between the starting and ending job numbers, inclusive. Eg: 21-32,
- a specific userid, which will match all jobs which were sent by that user. Eg: jones,
- a host name, when prefixed by an `@', which will match all jobs in the queue which were sent from the given host. Eg: @freebsd.org,
- a job range and a userid, separated by a `:', which will match all jobs which both match the job range and were sent by the specified user. Eg: jones:17 or 21-32:jones,
- a job range and/or a userid, followed by a host name, which will match all jobs which match all the specified criteria. Eg: jones@freebsd.org or 21-32@freebsd.org or jones:17@freebsd.org.
The values for userid and host name can also include
pattern-matching characters, similar to the pattern matching done for
filenames in most command shells. Note that if you enter a
topq
or bottomq
command as
parameters on the initial lpc
command, then the
shell will expand any pattern-matching characters that it can (based on what
files in finds in the current directory) before lpc
processes the command. In that case, any parameters which include
pattern-matching characters should be enclosed in quotes, so that the shell
will not try to expand them.
FILES
- /etc/printcap
- printer description file
- /var/spool/*
- spool directories
- /var/spool/*/lock
- lock file for queue control
DIAGNOSTICS
- ?Ambiguous command
- abbreviation matches more than one command
- ?Invalid command
- no match was found
- ?Privileged command
- you must be a member of group "operator" or root to execute this command
SEE ALSO
lpq(1), lpr(1), lprm(1), printcap(5), chkprintcap(8), lpd(8)
HISTORY
The lpc
utility appeared in
4.2BSD.