J'ai besoin d'obtenir le titre du périphérique USB connecté. Je peux le faire avec lsusb
.
udev autorise certaines substitutions lorsque j'écris des règles: disons, nous pouvons utiliser $kernel
pour obtenir le nom du périphérique, ou $devpath
pour obtenir le chemin vers le périphérique.
Mais le problème est que lsusb
renvoie une chaîne comme ça:
Bus 005 Device 032: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC
Mais le devpath d'udev est:
/devices/pci0000:00/0000:00:1d.0/usb5/5-2
Le numéro de bus est le même ( 5
), mais les numéros sont différents: Device 032
semble être un certain nombre logique (lorsque je reconnecte le périphérique, ce nombre augmente), et 2
semble être le numéro du périphérique physique.
Donc, udev renvoie un nombre physique, et j'ai besoin d'obtenir un nombre logique. Ensuite, je peux récupérer des données comme ceci:lsusb -D /dev/bus/usb/005/032
Alors, comment puis-je obtenir le numéro de périphérique logique 032
par un chemin physique comme /devices/pci0000:00/0000:00:1d.0/usb5/5-2
?
udev
vslsusb
etsys/devices/..
vs/dev/bus/usb/..
et à en juger par votre réponse, vous semblez être au courant :) Peut-être pouvez-vous éclairer ces deux questions? askubuntu.com/questions/342061/power-on-off-usb-ports et askubuntu.com/questions/498950/…