我有一台 Cups 行打印机(Epson 9 针)。打印工作正常,但打印一次后会跳过该页面。
我正在使用echo "Hi" | lpr -P myprinter
命令来测试。
它打印了消息,但是当我再次使用此命令打印时,它会跳过当前页面并打印到下一页(显然当前页面有很多空间)。有什么想法吗?
答案1
打印机服务器CUPS
将您发送的所有内容视为单独的打印作业。这意味着,包含“Hi”的行就是打印作业。默认情况下,不同的打印作业会转到不同的页面;这解释了您现在得到的结果。
现在,30 年前,当所有打印机都像您的 Epson 9 针打印机时,情况就不同了。CUPS
很少使用打印机管理器。像您使用 一样,一次向打印机发送一行数据是很常见的,echo
打印机自然会等待下一行,而不会转到下一页。这就是我们过去打印东西的方式。如果您现在想这样做,您必须使用“RAW”模式进行打印,实际上绕过了 CUPS 执行的打印机作业管理。您还需要抑制 CUPS 默认在打印机作业之间发送的“换页”,这会导致页面更改;您需要自己打印最后的“换页”。
我建议你看看这里,你可能会发现你的答案已经在等待了。
答案2
添加开关l
即可修复该问题。
echo "Hi" | lpr -l -P myprinter
-l
开关指定打印文件已针对目标进行格式化,应在不进行过滤的情况下发送。此选项相当于“-o raw”。