我在GNU / Linux上为连接的设备提供USB VID和PID。例如045e:0084
。我想要绑定,所以我为lsusb
grep VID:PID
的输出并按下udevadm
查找可接受的格式。最后,我获取结果路径的基名。类似的东西:
bus_dev=$(lsusb|grep VID:PID...) # Grep / Sed magic to extract bus and device from VID and PID.
path=$(udevadm info -q path -n /dev/bus/usb/$bus_dev) # e.g., -n /dev/bus/usb/003/018
basename $path # e.g., /devices/pci0000:00/0000:00:14.0/usb3/3-2/3-2.3/3-2.3.1
# e.g., yields 3-2.3.1
我可以这样使用它:
echo 3-2.3.1|sudo tee /sys/bus/usb/drivers/usb/unbind
从USB供应商和产品ID获取绑定的首选方法是什么?
答案 0 :(得分:1)
你的意思是这样的吗?
vidpid="1d6b:0002"
bus_dev=`lsusb | grep "ID\s$vidpid" | sed 's/^.*Bus\s\([0-9]\+\)\sDevice\s\([0-9]\+\).*$/\1\/\2/g' | tail -n 1`
path=$(udevadm info -q path -n /dev/bus/usb/$bus_dev)
basename $path