CUPSでプリンタに出力されるPSデータを、なんとかそのままファイルに保存したい時の設定方法メモ。この方法では、ジョブごとに1つのPSファイルにしか落とせませんが。また、プリンタドライバを変更したら、再度以下のような設定を行う必要があります。テスト環境はDebian sarge cupsys1.1.23です。
□ CUPSで印刷データをファイルに出力するメモ@Debian sarge 1.Web設定画面でのCUPS設定 ここでは、testというプリンタ名で登録していくことにする。 http://localhost:631/printers を開いて、「プリンタの追加」を選択。 「プリンタ名」は「test」、「デバイス」は「Parallel Port #1」 メーカ名とドライバは、任意のものを選ぶ。 ここでは、「メーカ名」は「Generic」、「ドライバ」は 「Generic PostScript Printer Foomatic/PostScript..」を選択した。 これで、プリンタデバイスの登録はひとまず完了。 2.出力先デバイスの変更 CUPSのプリンタ設定ファイル /etc/cups/printers.confをエディタ等で変更する。タグで囲まれた中の 「DeviceURI parallel:/dev/unknown-parallel0」 を 「DeviceURI parallel:/tmp/test.ps」 などの、任意の出力先ファイル名に変更する。 3.出力先ファイルの作成 $ touch /tmp/test.ps を実行して、出力先ファイルを作成する。 他のユーザからも印刷(ファイル出力)を行う場合は、書き込み権限がないので # chmod +w /tmp/test.ps なども行っておく。 4.CUPSの再起動 # /etc/init.d/cupsys restart を行って、CUPSの再起動を行い、変更を有効にする。 念のため、Web設定画面をリロードして、プリンタの設定が デバイス URI: parallel:/tmp/test.ps などになっていることを確認する。 5.印刷テスト Web設定画面からテスト印刷を行い、デバイスのサイズが 増えて、ちゃんとファイルにデータ出力されている事を確認する。 PSドライバなどで印刷したのであれば $ gv /tmp/test.ps などでPostScriptファイルを参照できるし、エディタ等で PostScriptファイルを開いて確認しても良い。
今までは、kccコマンドを利用してファイルの文字コードを判別していたのですが、Etch環境では、kccコマンドでのUTF-8の判別ができないのです。ってことで、nkfに宗旨がえしちゃいました。Etchのnkfでは--guessオプションが取り込まれており、UTF-8な文字コードを判別できます。
しっかし、.vimrcの変更とかsshの設定変更とか、いろいろ移行時に忘れていたモノが出てくるな..。
man nkfの一部抜粋 ---------------------------------------- --guess 自動判別の結果を出力する ---------------------------------------- nkf --guess hoge.txtなどのように打つのが面倒なので、.bashrcに ---------------------------------------- alias kc="nkf --guess" ---------------------------------------- を追加。source .bashrcなどして、読み込み直すと ---------------------------------------- $ kc hoge.txt UTF-8 ---------------------------------------- のように表示させることができる。 @IT - Linux Tips テキストファイルの文字コードを調べるには(nkf編) http://www.atmarkit.co.jp/flinux/rensai/linuxtips/980nkfguess.html