我在获取有关/dev/usb/lp*
设备的信息时遇到问题。
lsusb
命令为我提供了USB总线和设备ID以及设备名称,但我无法弄清楚如何让它告诉我相应/dev/usb/lp*
的名称设备
我没有CUPS。
答案 0 :(得分:0)
您可以使用libudev
来获得以下命令的等效内容:
$ udevadm info -a /dev/usb/lp*
在我的电脑中,它会输出如下内容:
looking at device '/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.1/usbmisc/lp2':
KERNEL=="lp2"
SUBSYSTEM=="usbmisc"
DRIVER==""
looking at parent device '/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.1':
KERNELS=="1-1.3:1.1"
SUBSYSTEMS=="usb"
DRIVERS=="usblp"
...
looking at parent device '/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3':
KERNELS=="1-1.3"
SUBSYSTEMS=="usb"
DRIVERS=="usb"
...
ATTRS{idProduct}=="341b"
ATTRS{idVendor}=="04e8"
...
他们在那里!需要的idProduct
和idVendor
您也可以手动导航/sys
目录来获取信息:
$ ls -l /dev/usb/lp2
crw-rw---- 1 root lp 180, 2 Sep 27 11:46 /dev/usb/lp2
$ readlink -f /sys/dev/char/180:2
/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.1/usbmisc/lp2
$ cat /sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/{idVendor,idProduct}
04e8
341b