lpr コマンド

この lpr コマンドのセクションには、 AIX® 印刷サブシステムの lpr と System V 印刷サブシステムの lpr に関する情報が含まれています。

AIX 印刷サブシステムの lpr コマンド

目的

印刷ジョブをキューに入れます。

構文

lpr [ -f ] [ -g ] [ -h ] [ -j ] [ -l ] [ -m ] [ -n ] [ -p ] [ -r ] [ -s ] [ -P Printer ] [ -# NumberCopies ] [ -C Class ] [ -J Job ] [ -T Title ] [ -i [ NumberColumns ] ] [ -w Width ] [ File ... ]

説明

lpr コマンドはスプーリング・デーモンを使って、 機能が使用可能になったときに指定された File パラメーターを印刷します。 ファイルが指定されないと、lpr コマンドは標準入力から読み取ります。

フラグ

項目 説明
-# Number 指定された各ファイルの印刷部数として Number 変数を使用して、複数の出力を作成します。
-C Class 印刷 Class をバースト・ページ上のジョブ分類として指定します。
-f フィルターを使用して、各行の先頭文字を標準の FORTRAN 紙送り制御文字として解釈します。
-g 指定したファイルは標準の作図データが設定されているものと想定されます。
-h バースト・ページの印刷を抑制します。
注: デフォルトでは、 ヘッダー・ページは印刷しますがトレーラー・ページは印刷しません。
-i [Number] 出力を Number 変数スペース分、字下げします。 Number 変数を指定していない場合は、 デフォルトとして 8 個のスペースが字下げされます。
-j メッセージ Job number is: nnn を指定します。 この場合、nnn は割り当てられるジョブ番号を表し、 標準出力に表示されます。 このメッセージは、ジョブがローカル印刷キューに実行依頼されると表示されます。
-J Job Job 変数をジョブ名としてバースト・ペーストに印刷します。 通常、lpr コマンドは最初のファイルの名前を使用します。
-l (小文字の L) フィルターを使用して、制御文字を印刷可能にします。
-m スプーリングが完了するとメールを送ります。
-n ditroff (デバイスに依存しない troff) データを含むファイルをフォーマットするフィルターを使用します。
-P Printer 強制的に Printer 変数に出力します。 このフラグが指定されない場合、次の条件が発生します。
  • デフォルトの値が設定されている場合、 lpr コマンドはデフォルト・プリンターを使用します。
  • LPDEST 環境変数が設定されている場合は、 lprLPDEST 変数により指定された値を使用します。 この環境変数を設定すれば、 PRINTER 変数も設定した場合でも、この値が必ず使用されます。
  • PRINTER 変数が設定されており、 LPDEST 変数が設定されていない場合は、 lprPRINTER 環境変数により指定された値を使用します。
    注: コマンド・ラインの宛先オプションはいずれも、 LPDESTPRINTER 環境変数をオーバーライドします。
-p pr コマンドを使用して、 ファイルをフォーマットします (lpr -ppr | lpr と非常によく似ています)。
-r スプーリングが完了するとファイルを除去します。
-s データ・ファイルをコピーしようとするのではなく、コマンド・ラインで指定したファイルから印刷します (非常に大きいファイルを印刷することができます)。 これは、データ・ファイルの印刷が終わるまでデータ・ファイルを変更したり除去したりできないことを意味します。 このフラグは有効なのは、 ローカル・ホスト上で (リモート・プリンター・ホストに送られるファイルは必ずコピーされます)、 指定データ・ファイルを使って作業する場合のみです。 lpr コマンドをパイプラインの最後に指定すると、このフラグは動作しません。
-T Title pr コマンドが使用するタイトルに、 ファイル名の代わりに Title 変数を使います。
-w Number Number 変数を pr コマンドのページ幅として使います。

セキュリティー

RBAC ユーザーおよび Trusted AIX ユーザーへの注意: このコマンドは特権命令を実行できます。 特権命令を実行できるのは特権ユーザーのみです。 権限および特権についての詳細情報は、「セキュリティー」の『特権コマンド・データベース』を参照してください。 このコマンドに関連した特権および権限のリストについては、lssecattr コマンドまたは getcmdattr サブコマンドの項を参照してください。

  1. 3 部のファイル new.index.c、print.index.c、および more.c を印刷するには、次のように入力します。
    lpr  -#3 new.index.c print.index.c more.c
    new.index.c ファイルを 3 部、print.index.c file ファイルを 3 部、more.c file ファイルを 3 部、印刷します。
  2. new.index.c, ファイル、print.index.c ファイル、および more.c ファイルを連結したもの 3 部印刷するには、次のように入力します。
    cat new.index.c print.index.c more.c | lpr  -#3
  3. バースト・ページ上に Operations と印刷し、 そのすぐ後に続けてファイル new.index.c を印刷するには、次のように入力します。
    lpr  -C Operations new.index.c
    これはシステム名 (ホスト名によって戻される名前) をバースト・ページ上の Operations と置き換えます。
  4. MyFile ファイルをキューに入れて、ジョブ番号を戻すには、次のように入力します。
    lpr -j MyFile

ファイル

項目 説明
/usr/sbin/qdaemon キューイング・デーモン。
/etc/qconfig キューイング構成ファイル。
/etc/qconfig.bin /etc/qconfig ファイルのダイジェストのバイナリー・バージョン。
/var/spool/lpd/qdir/* キュー要求。
/var/spool/lpd/stat/* キューの状況に関する情報。
/var/spool/qdaemon キューに入れられたファイルの一時コピー。

System V 印刷サブシステムの lpr コマンド

目的 (System V)

(BSD) ジョブをプリンターに送信します。

構文 (System V)

/usr/bin/lpr [ -P printer] [ -# copies] [ -C class] [ -J job] [ -T title] [ -i [indent] ] [ -w cols] [ -r] [ -m] [ -h] [ -s] [ -filter_option] [file ... ]

説明 (System V)

機能を利用できるようにするために、 lpr コマンドは、 次の印刷のためにプリンター・ジョブをスプーリング域に転送します。 それぞれのプリンター・ジョブは、 指定する各ファイル のコピーから成ります。 スプール域は、ライン・プリンター・スプーラー lpsched によって管理されます。 ファイルが指定されない場合、 lpr は標準入力から読み取ります。

lp は、優先インターフェースです。

他のいくつかのコマンドと同様、コマンド・ライン・オプションを単一の引数と結合することはできません。 つまり、
   lpr -fs
というコマンドは、以下のコマンドと同等ではありません。
   lpr -f -s

-s フラグを最初に置くか、 または各オプションを別個の引数として指定すると、 期待する結果が得られます。

lpr -ppr | lpr とまったく同じではありません。 lpr -p は各ページの上部に、 最後の修正日付ではなく現在日付を書き込みます。

troff および T[E]X のフォントは、 プリンター・ホストに存在します。 ローカル・フォント・ライブラリーは使用できません。

lpr は印刷するバイナリー・ファイルを対象とします。

userA が su を使用して userB になって /usr/bin/lpr を使用する場合、 プリンター要求は「userA」ではなく「userB」と入力されます。

フラグ (System V)

-P printer
出力を名前付き printer に送信します。 または、PRINTER 環境変数で名前が付けられたプリンターか、 デフォルト・プリンター lp に出力を送信します。
-# copies
各名前付きファイルに対して指定された copies の部数を生成します。 例:
   lpr -#3 index.c lookup.c
これは、index.c のコピーを 3 部生成し、続いて lookup.c のコピーも 3 部生成します。
   cat index.c lookup.c | lpr -#3

これは、それぞれのファイルを連結したコピーを 3 部生成します。

-C class
class をバースト・ページ上のジョブ分類として印刷します。 例:
   lpr -C Operations new.index.c

これは、システム名 (``hostname'' によって戻される名前) をバースト・ページ上の Operations と置き換え、 ファイル new.index.c を印刷します。

-J job
job をバースト・ページ上のジョブ名として印刷します。 通常、lpr は最初のファイルの名前を使用します。
-T title
pr が使用するタイトルに、 ファイル名の代わりに title を使います。
-i[indent]
インデント出力 indent の <Space> 文字。 デフォルトは 8 文字の <Space> 文字です。
-w cols
pr のページ幅に cols を使用します。
-r
スプーリングの完了時、 または -s フラグを使用した印刷の完了時にファイルを除去します。
-m
完了時にメールを送信します。
-h
バースト・ページの印刷を抑制します。
-s
印刷するファイルをコピーするのではなく、 その絶対パス名 (シンボリック・リンクではない) を使用します。 これは、データ・ファイルの印刷が終わるまでデータ・ファイルを変更したり除去したりできないことを意味します。 このフラグはただローカル・ファイルのコピーが作成されないようにするに過ぎません。 リモート・ホストのジョブはいずれコピーされます。 -s フラグは、 名前付きデータ・ファイルに対してのみ機能します。 lpr コマンドがパイプラインの最後にある場合、 データはスプールにコピーされます。
filter_option
以下の単一文字のオプションは、 ファイルが標準のテキスト・ファイルではないことをライン・プリンター・スプーラーに通知します。 スプーリング・デーモンは、 適切なフィルターを使用して、 該当するデータを印刷します。
-p
pr を使用して、 ファイルをフォーマットします (lpr -p は、 pr | lpr と非常によく似ています)。
-l
制御文字を印刷し、 改ページを抑制します。
-t
ファイルに troff (cat フォトタイプセッター) バイナリー・データを含めます。
-n
ファイルに ditroff (troff に依存しないデバイス) のデータを含めます。
-d
ファイルに tex (Stanford の DVI フォーマット) のデータを含めます。
-g
プリンター・スプーラーが使用するフィルター用に、 ルーチン plot によって生成された標準の作図データをファイルに含めます。
-v
ファイルにラスター・イメージを含めます。 イメージを印刷するためには、プリンターが適切なイメージ・モデル (PostScript)などをサポートしている必要があります。
-c
ファイルに cifplot によって生成されるデータを含めます。
-f
各行の先頭文字を標準の FORTRAN 紙送り制御文字として解釈します。

filter_option が指定されない場合 (そしてプリンターが PostScript)を解釈できる場合)、ファイルの最初の 2 文字の文字列 `%!' は、PostScript コマンドを使用できることを示します。

上記のフィルター・オプションは標準のユーザー・インターフェースを提供していますが、 すべてのプリンターですべてのオプションを使用できる、 または適切であるわけではありません。

 

セキュリティー (System V)

RBAC ユーザーおよび Trusted AIX ユーザーへの注意: このコマンドは特権命令を実行できます。 特権命令を実行できるのは特権ユーザーのみです。 権限および特権についての詳細情報は、「セキュリティー」の『特権コマンド・データベース』を参照してください。 このコマンドに関連した特権および権限のリストについては、lssecattr コマンドまたは getcmdattr サブコマンドの項を参照してください。

ファイル (System V)

/usr/lib/lp/lpsched
System V ライン・プリンター・スプーラー
/var/spool/lp/tmp/*
スプーリングで使用されるディレクトリー
/var/spool/lp/tmp/system/*-0
スプーラー制御ファイル
/var/spool/lp/tmp/system/*-N
(N は 1 以上の整数) `*-0' ファイルで指定されるデータ・ファイル

エラー・コード (System V)

lpr: printer: unknown printer
printer が LP データベース内で見つかりません。 多くの場合タイプミスですが、 プリンターがシステムに存在しない可能性もあります。 lpstat -p を使用して理由を調べてください。
lpr: error on opening queue to spooler
ローカル・マシン上の lpsched への接続に失敗しました。 これは通常、ブート時に開始したプリンター・サーバーが非活動状態にあるか、 またはハングしていることを意味しています。 プリンター・スプーラー・デーモン /usr/lib/lpsched が実行中であるか確認してください。
lpr: printer: printer queue is disabled
これは、
/usr/etc/lpc disable printer

を使用し、 lpr がキューにファイルを置かないようにするために、 キューがオフになったことを意味しています。 これは通常、プリンターが長時間ダウンする場合に行われます。プリンターは、 lpc を使用する特権ユーザーが再びオンにできます。

lpr: Can't send message to the LP print service
lpr: Can't establish contact with the LP print service
これら 2 つのメッセージは、 LP プリント・サービスが停止したことを示しています。 システム管理者の援助を得てください。
lpr: Received unexpected message from LP print service
ソフトウェアにエラーがある可能性があります。 システム管理者の援助を得てください。
lpr: There is no filter to convert the file content
lpstat -p -l コマンドを使用して、 ファイル・タイプを扱うプリンターを直接見つけるか、 あるいはシステム管理者に相談してください。
lpr: cannot access the file
ファイル名が有効であるか確認します。