lp.cat, lp.set, lp.tell コマンド
注: これは System V Print Subsystem コマンドです。
目的
インターフェース・プログラムで使用するデフォルト・プリンター・フィルター。
構文
/usr/lib/lp/bin/lp.cat [ -r ] [ Rate ]
/usr/lib/lp/bin/lp.set H_pitch V_pitch Width Length Charset
/usr/lib/lp/bin/lp.tell Printer
説明
lp.cat コマンドは、 インターフェース・プログラムによって呼び出されるデフォルト・プリンター・フィルターです。 lp.cat は、標準入力に印刷されるファイルを読み取り、 印刷先のデバイスに書き込みます。
lp.cat は次のシグナルを処理します。
- 正常終了 (SIGTERM)
- シリアル・ライン停止 (SIGHUP、データ・キャリア検出 (DCD) 廃棄による)
- 割り込み (SIGINT および SIGQUIT)
- 早期パイプ終了 (SIGPIPE)
lp.cat コマンドは、 印刷ジョブの出力待ちの時間が長くなると異常終了します。 デフォルトの最大待ち時間は、出力バッファー・サイズを 2 倍して (2 * 1024 バイト)、 送信速度、印刷速度、または Rate の指定値 (いずれの速度も字/秒 (CPS)) のうち最小の値で除算すると求められます。 Rate パラメーターにより新しく最大遅延時間を定義できます (このパラメーターで定義した遅延時間の方が長い場合)。 Rate が 0 の場合は、 遅延できる時間は実際上無期限になります。
-r フラグを指定すると、 lp.cat は字/秒単位で有効スループットを報告します。 この統計は、 1024 バイト送信されるたびに標準エラー出力に印刷されます。
インターフェース・プログラムで lp.set コマンドを呼び出して、 プリンター上の文字ピッチ (H_pitch)、 行ピッチ (V_pitch)、 ページ幅 (Width)、 ページ長 (Length)、 および文字セット (Charset) を設定できます。
デフォルトの単位は、文字と行ピッチの場合は字/インチ、幅の場合は列数、 長さの場合は行数です。 センチメートルの場合は c、インチの場合は i を値に付加すると、 単位を明示的に指定できます。
特定の特性を設定できない場合は、 lp.set は値 1 で終了し、 1 文字の文字コードの後で改行して標準エラー出力に印刷します。 次の表に文字コードを示します。
文字コード | 設定されていないプリンター特性 |
---|---|
H | 文字ピッチ |
L | ページ長 |
S | 文字セット |
V | 行ピッチ |
W | ページ幅 |
インターフェース・スクリプトでは、 lp.tell を使用して、 プリンター障害の説明を印刷サービスに送信します。 lp.tell は、 標準入力上で読み取ったものをすべて印刷サービスに送ります。 印刷サービスは、印刷管理者に対するアラートとしてメッセージを送信します。
フラグ
項目 | 説明 |
---|---|
-r | lp.cat コマンドの場合に、有効スループット (字/秒単位) の報告を指定します。 この統計は、 1024 バイト送信されるたびに標準エラー出力に印刷されます。 |
終了状況
項目 | 説明 |
---|---|
0 | 標準終了; エラーなし |
1 | 標準入力が定義されていない |
2 | 標準出力が定義されていない |
3 | プリンター・タイプ (TERM) が定義されていないか terminfo データベース中にない |
4 | 標準入力と出力が同一 |
5 | 書き込みの失敗; プリンターがオフラインの可能性あり |
6 | 長時間遅延によるタイムアウト; プリンターがオフラインの可能性あり |
7 | 停止 (SIGHUP) 検出; キャリアが消失 |
8 | 終了 (SIGINT または SIGQUIT) またはパイプの早期クローズ (SIGPIPE) |
lp.set は正常実行された場合は 0 を戻し、 正常実行されなかった場合はエラーとして 1 を戻します。
項目 | 説明 |
---|---|
0 | 標準終了; エラーなし |
1 | 表示するサービスに対するメッセージ・キューをオープンできない |
90 | 以前のサービスからプリンター名かキーを取得できない |
91 | 表示するサービスにメッセージを送信できない |
92 | 以前のサービスから肯定応答を受信できない |
93 | 以前のサービスから破壊された肯定応答を受信した |
94 | 印刷サービスが送信中に破壊されたメッセージを報告した |
ファイル
項目 | 説明 |
---|---|
/usr/lib/lp/bin/lp.cat | lp.cat の絶対パス名 |
/usr/lib/lp/bin/lp.set | lp.set の絶対パス名 |
/usr/lib/lp/bin/lp.tell | lp.tell の絶対パス名 |
/etc/lp/model | プリンター・インターフェース・プログラム・ディレクトリー |
/etc/lp/interfaces | プリンター・インターフェース・プログラム・ディレクトリー |