如何在linux中区分两个具有相同pid/vid的usb触摸屏设备我有两个相同的usb触摸屏设备。我想在启动计算机时使用它们而不会出错。所以我需要使用“xinput map-to-output”来区分它们。但是,它们几乎相同。它们具有相同的 PID/VID、相同的供应商、相同的制造商和相同的名称。
Xinput 映射到输出 .XID 有时会发生变化,并且 shell 并不总是有用的。XID交换时不知道如何解决。任何有关如何解决此问题的建议表示赞赏。
如何在linux中区分两个具有相同pid/vid的usb触摸屏设备我有两个相同的usb触摸屏设备。我想在启动计算机时使用它们而不会出错。所以我需要使用“xinput map-to-output”来区分它们。但是,它们几乎相同。它们具有相同的 PID/VID、相同的供应商、相同的制造商和相同的名称。
Xinput 映射到输出 .XID 有时会发生变化,并且 shell 并不总是有用的。XID交换时不知道如何解决。任何有关如何解决此问题的建议表示赞赏。
为简短的回答道歉。我会试着找时间更新它,对我实际做的事情发表一些评论。
我今天遇到了这个确切的问题(在搜索信息时遇到了你的问题)。
这就是我测试一种解决方案的方式。
#!/bin/sh
TOUCH_XINPUT_NAME=ET2494
export DISPLAY=:0
FIRST_ID=$(xinput | grep $TOUCH_XINPUT_NAME | sed -n '1s/.*id=\([0-9]*\).*/\1 /p')
SECOND_ID=$(xinput | grep $TOUCH_XINPUT_NAME | sed -n '2s/.*id=\([0-9]*\).*/\1 /p')
echo First id >> touch-sysfs-node.log
echo $FIRST_ID >> touch-sysfs-node.log
udevadm info -q property -n $(xinput --list-props $FIRST_ID | grep 260 |
awk '{print substr($4, 2, length($4) - 2);}') | grep ID_PATH= | sed -n 's/ID_PATH=\(.*\)/\1/ ; p' >> touch-sysfs-node.log
echo Second id >> touch-sysfs-node.log
echo $SECOND_ID >> touch-sysfs-node.log
udevadm info -q property -n $(xinput --list-props $SECOND_ID | grep 260 |
awk '{print substr($4, 2, length($4) - 2);}') | grep ID_PATH= | sed -n 's/ID_PATH=\(.*\)/\1/ ; p' >> touch-sysfs-node.log
echo ----------------------- >> touch-sysfs-node.log