LPRM(1)

名称
lprm - 印刷ジョブをキューから削除する

書式
lprm [-Pprinter] [-] [job # ...] [user ...]

解説
lprm は 1 つのジョブ、もしくは複数のジョブをプリンタの スプールキューから削除します。スプールディレクトリはユーザから保護され ているので、ジョブの削除は lprm を利用するのが唯一の手段です。 ジョブの所有者は、ユーザのログイン名と lpr(1) を実行した計算機のホスト名で決定されます。

オプションとしては以下のものがあります:

-Pprinter
    printer を扱うキューを指定します (指定しない場合はデフォルトのプリンタを使います)。

-   もし単一の `-' が与えられた場合、 lprm はユーザのすべてのジョブを削除します。 もしスーパユーザがこのオプションを使った場合、スプール キューは完全に空になります。

user
    lprm は、 user の所有するすべてのジョブを削除しようと 試みます。この lprm の呼び出し方は、スーパユーザだけに有用です。

job #
    ユーザは、ジョブ番号を指定することで個々のジョブをキューから 削除することができます。この番号は lpq(1) プログラムから得ることができます。たとえば、以下のようになります。

        % lpq -l
        1st:ken				[job #013ucbarpa]
        	(standard input)	100 bytes
        % lprm 13

もし、どのオプションも与えられなかったときは、 lprm を実行したユーザが持つアクティブなジョブを削除します。

lprm は削除するファイルの名前をアナウンスしますが、もしキュー内 に削除するジョブがないときには何もアナウンスしません。

lprm は、スプールのファイルを削除する前に、もし必要であればアクティブな デーモンを殺します。デーモンを殺した場合、ファイルを削除したあとで 新しいデーモンを自動的に再スタートさせます。

環境変数
もし、以下の環境変数が存在したならば、 lprm は利用します。

PRINTER
    もし環境変数 PRINTER が存在し、プリンタを -P オプションで指定しなかった場合、デフォルトプリンタは PRINTER の値となります。

関連ファイル
/etc/printcap
    プリンタの特徴を記述するファイル
/var/spool/*
    スプールディレクトリ
/var/spool/*/lock
    現在のデーモンのプロセス ID と、現在アクティブなジョブのジョブ番号を 得るためのロックファイル

関連項目
lpq(1), lpr(1), lpd(8)

診断
もし、自分が所有者でないファイルを削除しようとした時は、 ``Permission denied'' になります。

バグ
ロックファイルの更新時に、競争になる場合があるので、現在のアクティブ なジョブを正しく認識しないかもしれません。

歴史
lprm コマンドは 3.0BSD から登場しました。