web-dev-qa-db-ja.com

LibreOffice、lprコマンドを使用してコマンドラインから印刷しますか?

コマンドラインからWord文書を印刷しようとしていますが、通常はlprを使用する印刷オプションを指定する必要があります。これは私が使用しているコマンドです

libreoffice -p "filename.doc"

ユーザー名(-U)を指定できるようにする必要がありますが、これは可能ですか?以下は機能しません

libreoffice -p "filename.doc" -U username

これは機能する必要がありますか、それとも別の方法がありますか?

10
Davis G

lprコマンドラインオプションをlibreofficeに渡すことはできません。 2つの可能な解決策は次のとおりです。

  1. ワンステップソリューション(私の意見では最良のソリューション):使用 noconv 出力a PDF to stdout piped to lpr

    $ unoconv --stdout filename.doc | lpr -U username -P the_printer_name
    
  2. 3つのステップの解決策(unoconvが必要ない/使用できない場合):一時ファイルにlibreoffice --print-to-fileを使用する+ファイルのlpr +一時ファイルを削除する(残念ながらlibreofficeはまだstdout)への印刷をサポートしていません:

    $ libreoffice --headless --print-to-file --printer-name the_printer_name --outdir /tmp filename.doc
    $ lpr -U username /tmp/filename.ps -P the_printer_name
    $ rm /tmp/filename.ps
    
8
Pedro Romano

これは、Debian9でLibreOfficeとCUPSプリンターを使用してドキュメントを印刷する方法です。

/usr/bin/libreoffice --pt [cupsname] /home/username/filename.odt

それは中間ステップなしで非常にうまく機能します。

2
Jeffrey GT

の下で、$ libreoffice --help

使用法:soffice [オプション] [ドキュメント...]

soffice -p File_name.odt

私のために働いた。

libreoffice -p File_Name.odtはプログラムを開いたばかりで、lprはゴミを吐き出しました。

1
user768717