Preciso obter o título do dispositivo USB conectado. Eu posso fazer isso com lsusb
.
O udev permite algumas substituições quando escrevo regras: digamos, podemos usar $kernel
para obter o nome do dispositivo ou $devpath
para encontrar o caminho para o dispositivo.
Mas o problema é que lsusb
retorna uma string assim:
Bus 005 Device 032: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC
Mas o devpath do udev é:
/devices/pci0000:00/0000:00:1d.0/usb5/5-2
O número do barramento é o mesmo ( 5
), mas os números são diferentes: Device 032
parece ser um número lógico (quando reconecto o dispositivo, esse número aumenta) e 2
parece ser o número físico do dispositivo.
Então o udev retorna o número físico e preciso obter o número lógico. Então, eu posso recuperar dados como este:lsusb -D /dev/bus/usb/005/032
Então, como posso obter o número do dispositivo lógico 032
por caminho físico /devices/pci0000:00/0000:00:1d.0/usb5/5-2
?
udev
vs.lsusb
esys/devices/..
vs./dev/bus/usb/..
e, a julgar pela sua resposta, você parece ter conhecimento :) Talvez você possa lançar alguma luz sobre essas duas perguntas? askubuntu.com/questions/342061/power-on-off-usb-ports e askubuntu.com/questions/498950/...