无需CUPS即可获取USB打印机信息

问题描述 投票:0回答:2

我想通过USB连接多台打印机,并向每台打印机发送打印文件。我知道打印机被列为/dev/usb/lp0/dev/usb/lp1,目前,我正在使用此python指令将文件发送到打印机

for files in os.listdir('/folder/with/print/files'):
        shutil.copyfile('/folder/with/print/files', '/dev/usb/lp0')

但是,我注意到Linux没有按任何特定顺序标记lp0lp1。由于我这样将文件发送到打印机,我不想使用CUPS来获取每台打印机的信息。我宁愿不让我的打印调用依赖于搜索驱动程序,因为我已经为这些打印机格式化了这些文件。相反,我想找到一种替代方法来获取lp *(lp0,lp1等)的打印机信息。我最好通过python来做这件事,或者使用os函数浏览Linux内核。有什么建议?

python linux printing linux-kernel usb
2个回答
0
投票

而不是直接写入打印机设备尝试在shell命令中使用lpr!

http://www.tldp.org/HOWTO/Printing-Usage-HOWTO-2.html

看起来它可以让你按名称选择打印机。


0
投票

可以使用udevadm命令获取USB设备供应商/型号/序列号:

udevadm info -q property /dev/usb/lp0

应该足以区分设备。

© www.soinside.com 2019 - 2024. All rights reserved.