Shoeisha Technology Media

CodeZine(コードジン)

記事種別から探す

lpr

ファイル内容を印刷する
2015/05/20 08:00

対応OS: linux , freebsd, solaris
lpr [-Pprinter] [-#NUM] [NAME...]

 NAME...に指定したファイルの内容を印刷用データとして、プリントキューに登録します。

 NAME...を省略した場合は、標準入力からデータを読み込んで印刷用データとします。

 プリントデーモンは、印刷を専門的に受け持つデーモンプログラムで、プリントキューにデータが入るとプリンタの状態を確認して、印刷できる状態であれば、プリントキューのデータをスプールに送ります。スプールに格納されたデータは、すぐにプリンタの印刷用バッファに転送されて印刷されます。処理プログラムからプリンタへの印刷イメージを下に示します。

印刷処理のイメージ
■ 印刷処理のイメージ
プリントキュー

 プリントキューとは、プリンタ1台につきひとつ用意されるデータ保存用の格納領域で、プリンタが印刷可能状態になるまで、印刷データを一時的に格納しておく場所です。印刷データはこのプリントキューに格納された後、プリントデーモンによって、スプールを経由して一括して印刷されます

スプール

 スプールとは、印刷するべきデータを一時的に格納しておく場所で、ディスク上にあります。これには、プリンタ装置が低速なため、印刷を実行したプログラムが印刷完了まで待ち合わせることによって、ユーザが次の操作をできなくなる、といったことを防ぐ目的があります。スプールに格納されたデータは、他の処理を優先させながら少しずつデータを転送して、この速度差を緩和します

デーモンプログラム

 デーモンプログラムとは、システム起動時に一度起動され、常にバックグランドで動き続けているプログラムで、決められたきっかけがあると動作を開始します。主なデーモンプログラムとして

 は、ネットワーク系のデーモンプログラムやプリントデーモンがあります。プリントデーモンは、プリントキューにデータが入れられることをきっかけとして、処理を開始し、プリントキュー内のデータをスプールへ出力します

オプション
① -Pprinter
「printer」にプリンタ名を指定したプリンタに印刷用データを出力します。省略した場合は、デフォルトプリンタ(環境変数「PRINTER」)に印刷用データを出力します「-P」と「printer」の間にスペースは必要ありません。
② -#NUM
印刷部数を「NUM」に指定します。省略した場合は、1部となります。「-#」と「NUM」の間にスペースは必要ありません。
引数
① NAME...
印刷するファイルのファイル名を指定します。複数のファイルを指定する場合は、スペースで区切って指定します。ワイルドカードの使用も可能です。
プリンタと部数を指定して、ファイル内容をプリンタに出力する
$ lpr -Pprt -#7 fl001 
プリンタ「prt」でファイル「fl001」の内容を7部印刷する
$
デフォルトプリンタで、複数ファイルをプリンタに出力する
$ lpr fl001 fl002 
デフォルトプリンタでファイル「fl001」と「fl002」を印刷する
$
標準入力からのデータをプリンタに出力する
$ ls -l | lpr -Pprt 
プリンタ「prt」に「ls -l」の結果を印刷する
$
HINT!

 lsコマンド

関連タグ

UNIXコマンド辞典トップページに戻る

All contents copyright © 2006-2017 Shoeisha Co., Ltd. All rights reserved. ver.1.5