(How)スクリプトを使用して前処理を自動化できますかlp
? ()fileToPrint | script.sh | lp -d myPrinter
の間のパイピングは私にlp
()を直接実行するソースコードが多く、lp -d myPrinter filetoPrint
特にスクリプトに特定のプリンタが1つしか必要ないため、現在ではこれを変更する意図がないため、オプションではありません。
lpoption
私は(pseduocode)と言えるこのようなことを考えていますpreprocess myPrinter with script.sh
(myOtherPrinterではなくmyPrinterのみ)。
これは可能ですか?
答え1
あなたはできます独自のバックエンドを書く前処理を実行し、通常使用する実際のバックエンドに渡します。プリンタを設定すると、URIにカスタムバックエンドが使用されます。
私は実際にCUPSがローカルパッチLPRngサーバーに印刷できるようにするのと同様のことをしました。
答え2
私は偶然にtea4cups
(DebianのPackage is cups-tea4cups
)次のように私が望むものを正確に実行できることを発見しました。
# tea4cups.conf
[myprinter] # just the cups printer name
filter: mycommand
# pipes everything though mycommand, like "<input> | mycommand | lp"
# if the printer URI is prefixed with 'tea4cups://'