LPR 命令无法识别 CUPS 打印机

Dat*_*p23 4 linux cups lpr

我有一个 cups 服务器,上面配置了一台共享打印机。它可以毫无问题地打印测试页。

printername (Idle, Accepting Jobs, Shared)
Description:    desc
Location:   
Driver: Zebra ZPL Label Printer (grayscale, 2-sided printing)
Connection: socket://172.20.50.26
Defaults:   job-sheets=none, none media=oe_w288h432_4x6in sides=one-sided
Run Code Online (Sandbox Code Playgroud)

这是 lpstat -t 的输出。它显示打印机空闲并接受请求

admin@SERVER:~$ lpstat -t
scheduler is running
no system default destination
device for printername: socket://172.20.50.26
printername accepting requests since Thu 26 Jan 2012 01:29:35 PM CET
printer printername is idle.  enabled since Thu 26 Jan 2012 01:29:35 PM CET
Run Code Online (Sandbox Code Playgroud)

现在,当我想通过 LPR 命令向它发送打印作业时,它无法识别打印机

/usr/bin/lpr -P printername test.pdf
Run Code Online (Sandbox Code Playgroud)

结果

lpr: ttn_seg_zebra1: unknown printer
Run Code Online (Sandbox Code Playgroud)

我在这里错过了什么?

小智 13

根据下面的评论:

安装 cups-bsd 而不是 lpr。Cups-bsd 包含它自己的 lpr 二进制文件。

这个包提供了与 CUPS 交互的 BSD 命令:

 /usr/bin/lpqa 
 /usr/bin/lpr 
 /usr/bin/lprm 
 /usr/sbin/lpc
Run Code Online (Sandbox Code Playgroud)


eww*_*ite 3

根据 lptstat 输出,您的打印机名称字面意思是“打印机名称”。

跑步lp -d printername test.pdf还是lpr -P printername test.pdf会起作用。

例如,以下是正在运行的系统的输出:

[root@Smack ~]# lpstat -t
scheduler is running
no system default destination
device for label: socket://label:9100
device for upstairs: socket://upstairs:9100
label accepting requests since Mon Feb 27 05:18:45 2012
upstairs accepting requests since Mon Feb 27 06:31:23 2012
Run Code Online (Sandbox Code Playgroud)

在此,我定义了两台打印机;labelupstairs。为了打印到它们,我必须在 lp/lpr 命令行上使用这些名称。