Provided by: manpages-ja_0.5.0.0.20221215+dfsg-1_all 

名前
printcap — プリンタ ケイパビリティ データベース
書式
printcap
説明
printcap は termcap(5) データベースを簡単にしたものであり、ラインプリンタを記述するのに使われる。 スプー リングシステムは、使用されるたびに printcap ファイルにアクセスし、プリンタの動的な追加と削除を可能にして いる。 データベースにおける各エントリは、1 つのプリンタを記述するのに使われる。 このデータベースは書き込 み可能にしておいてはならない( termcap データベースは普通書き込み可能になっている)。 なぜなら、それによっ てアカウンティング(accounting)をすり抜けることが 可能になってしまうからである。 通常、デフォルトプリンタは lp である。ただし、環境変数 PRINTER が設定されていれば、そちらが優先される。 各スプーリングユーティリティは、目的のプリンタを明示的に指定できるよう、 オプション -P printer をサポート している。 ある特定のプリンタに対するこのデータベースの設定の詳細は 4.3 BSD Line Printer Spooler Manual を参照せよ。
ケイパビリティ
ファイルレイアウトの説明については termcap(5) を参照せよ。 Name Type Description af str NULL アカウントファイル名 br num none lp が tty の場合, そのボーレートを設定する (ioctl(2) コール) cf str NULL cifplot データ用フィルタ df str NULL tex データ (DVI フォーマット) 用フィルタ fc num 0 lp が tty の場合, フラグビットをクリアーする (sgtty.h) ff str ‘\f’ 改ページ(form feed) のために送信する文字列 fo bool false デバイスオープン時に改ページ(form feed)を印刷する fs num 0 `fc' と同様だが、こちらはビットをセットする gf str NULL グラフデータ用フィルタ (plot(3) フォーマット ) hl bool false 最後にバーストヘッダーページを印刷する ic bool false ドライバはインデント付き印刷のために (非標準の) ioctl をサ ポートする if str NULL アカウントのためのテキストフィルタ名 lf str /dev/console エラーログファイル名 lo str lock ロックファイル名 lp str /dev/lp 出力に対してオープンするデバイス名 mx num 1000 最大ファイルサイズ ( BUFSIZ ブロックの数で指定), 0 = 制限なし nd str NULL キューリストのための次のディレクトリ (未実装) nf str NULL ditroff データ(デバイス非依存 troff)用フィルタ of str NULL 出力フィルタプログラム名 pc num 200 1 フィートもしくは 1 ページあたりの価格(1/100 セント単位) pl num 66 ページ長 (行数) pw num 132 ページ幅 (文字数) px num 0 ピクセル単位でのページ幅 (水平方向) py num 0 ピクセル単位でのページ長 (垂直方向) rf str NULL FORTRAN スタイルのテキストファイルを印刷するためのフィルタ rg str NULL 制限グループ。このグループのメンバーのみアクセスが許される rm str NULL リモートプリンタのためのマシン名 rp str ``lp'' リモートプリンタ名引数 rs bool false ローカルにアカウントをもったリモートユーザに限定する rw bool false 読み書きのためにプリンタデバイスをオープンする sb bool false ショートバナー(short banner) (1 行のみ) sc bool false 複数コピーを抑制する sd str /var/spool/lpd スプールディレクトリ sf bool false 改ページ(form feed)を抑制する sh bool false バーストページヘッダーの印刷を抑制する st str status ステータスファイル名 tf str NULL troff データ(cat 写植)用フィルタ tr str NULL キューが空の場合に印刷するための後書き文字列(trailer string) vf str NULL ラスタイメージ(raster image)用フィルタ ローカルのラインプリンタドライバが字下げをサポートしているならば、 デーモンはその方法を理解できなければな らない。
フィルタ
lpd(8) デーモンは、さまざまなプリンタのタイプに応じてファイルを処理するために、 filters (フィルタ) のパイ プラインを構築している。 選択されるフィルタは、 lpr(1) へ渡されるフラグに依存している。 パイプラインの構 築は、次のようになる : p pr | if 通常テキスト + pr(1) none if 通常テキスト c cf cifplot d df DVI (tex) g gf plot(3) n nf ditroff f rf Fortran t tf troff v vf ラスタイメージ(raster image) if フィルタは、次の引数とともに呼び出される: if [-c] -wwidth -llength -iindent -n login -h host acct-file -c フラグは、 lpr に -l フラグ(制御文字を文字としてそのまま通す)が指定してある時に限って渡される。 width と length は、ページの幅と長さ(それぞれ pw と pl から得られる)を文字数で指定する。 -n と -h はそれぞ れ、ジョブ所有者のログイン名とホスト名を指定する。 acct-file は、 printcap の af エントリから渡される。 if が指定されていない場合は、 代わりに of が使用される。これらの間には、 if がそれぞれのジョブに対して毎 回オープンされるのに対し、 of は 1 回しかオープンされないという違いがある。 したがって、アカウンティン グ(accounting)を行なうには if の方が適している。 of には、 width と length の 2 つのフラグが与えられるだ けである。 他のすべてのフィルタは、次のようにして呼び出される: filter -xwidth -ylength -n login -h host acct-file ただし、 width と length はピクセル単位で表され、それぞれ px エントリと py エントリによって指定される。 すべてのフィルタは、そのファイルとして stdin (標準入力)を、プリンタとして stdout (標準出力)をとる。そのロ グは、 stderr (標準エラー出力)に対して、もしくは syslog(3) を使ってとられる。また、 SIGINT を無視すること は許されない。
ロギング(LOGGING)
ラインプリンタプログラム自身 (つまり、 lp* プログラム) によって生成されたエラーメッセージは、 LPR を使う ことで syslog(3) によって記録される。 フィルタのうちの 1 つの stderr (標準エラー出力) 上に印刷されたメッ セージは、それに対応する lf ファイルへと送られる。 もちろん、フィルタはそれ自身で syslog を使ってもかまわ ない。 コンソールへ送られるエラーメッセージには、改行(LF)だけではなく、 復帰(CR)と改行(LF)が追加される。
関連項目
termcap(5), lpc(8), lpd(8), pac(8), lpr(1), lpq(1), lprm(1) 4.3 BSD ラインプリンタスプーラーマニュアル.
履歴
ファイルフォーマットは、 4.2BSD で登場した。 4.2 Berkeley Distribution May 10, 1991 PRINTCAP(5)