コマンドラインから特定のページを印刷する方法は?


8

コマンドラインを介してPDFファイルをプリンターに送信し、奇数ページのみを印刷する方法はありますか?たとえば、lpr -{some option} *.pdfまたは多分{some command to get odd-numbered pages} *.pdf | lpr。これは、各ファイルを開いて[印刷]ダイアログを開き、ページ1、3、5、7、9を印刷するように指示するよりも高速です...アイデアは、すべての奇数ページを印刷することです。紙の反対側。

回答:


10

試す

lpr -o page-set=odd <file>
lpr -o page-set=even <file>

このドキュメントと他のlprオプションのドキュメントは、cupsドキュメントにあります


@ fschmitt:ありがとう、完全に機能しました!(申し訳ありませんが、完全な回答を残す代わりにコメントする方法を理解することはできません。)
ウルフ

可能なすべてのlprオプションをまとめたマンページはありますか?
ジェレミア2017年

4

fschmittによるcupsソリューションの代替手段-たとえば、使用可能なlprが限られている場合-は、psselectコマンドです

たとえば、両面印刷ユニットのないプリンタでの手動両面印刷の場合:

$ psselect -e -r < foo.ps | lpr
$ # manually rotate pages by 180 degrees and reinsert
$ psselect -o < foo.ps | lpr

まあ、あなたのプリンターがしっかりした紙の輸送メカニズムを持っている場合にのみ機能します...

-eは偶数ページのみを選択し、-oは奇数ページを選択し、-rは選択を逆にします


2

PDFを前処理することを選択した場合(たとえば、印刷フレームワークがCUPSではなく、ページ選択をサポートしていないため)、pdftkでそれを行うことができます。

pdftk A=foo.pdf cat Aodd output - | lpr
# take out the sheets and feed them back in
pdftk A=foo.pdf cat Bend-1even output - | lpr

プリンタの安さに応じて、奇数ページを逆順に印刷し、偶数ページを順に印刷する必要がある場合がありますend-1。他のコマンドに移動します。ドキュメントのページ数が奇数の場合は、スタックから最後のページを取り出し、2回目にフィードバックしないでください。


うーん、紙の書き込みについて-私が遭遇したHPプリンターの両面印刷モデルは、常にページを自動的に再挿入して裏面に印刷しましたが、両面を一度に印刷しませんでした。
maxschlepzig 2010年

@maxschlepzig:はい、そうです、私は有効なポイントを過度に一般化してきました。周りにあり、悪いもの(ほこりの汚れ、インクジェットインク、小さな破れなど)がたまっているシートの裏面に印刷すると、用紙またはプリンターが損傷する可能性がありますが、プリンターのプリンターから出てきた用紙を再度挿入すると、初めてで結構です。
Gilles 'SO-悪をやめる'
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.