有没有办法通过命令行将 PDF 文件(或多个文件)发送到打印机,但仅打印奇数页?例如,lpr -{some option} *.pdf
或者也许{some command to get odd-numbered pages} *.pdf | lpr
。这比打开每个文件、打开“打印”对话框并告诉它打印第 1、3、5、7、9 页要快...这个想法是打印所有奇数页,然后我可以打印偶数页纸的另一面。
答案1
答案2
fschmitt 提供的 cups 解决方案的替代方案 - 例如,如果您只有一些有限的 lpr 可用 - 是命令选集。
例如,在没有双面打印单元的打印机中进行手动双面打印:
$ psselect -e -r < foo.ps | lpr
$ # manually rotate pages by 180 degrees and reinsert
$ psselect -o < foo.ps | lpr
好吧,只有当您的打印机具有坚如磐石的纸张传输机制时才有效......
-e 仅选择偶数页,-o 奇数页,-r 反转选择
答案3
如果您选择预处理 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
另一个命令。如果文档页数为奇数,则从纸叠中取出最后一页,并且不要第二次送回。