我在自动化任务方面遇到了一些麻烦。我正在 Linux 机器上测试一些基于 Android 的手机。自动化脚本使用的设备 ID/dev/bus/usb/001/"053"
将始终位于总线下001
。但将dev
是随机的,例如,如果我插入一部手机,则dev
ID 将是053
,如果移除并再次插入,则dev
ID 将是054
。
问题是,当某些测试在设备上运行并且如果设备重新启动时,dev
重新启动的设备会显示新的 ID,并且我的脚本会因新的dev
ID 而失败。
有什么方法可以强制 USB 设备使用相同的dev
ID 而不是新的 ID,这样即使设备重新启动后我的测试也不会出现问题?
答案1
似乎无法强制使用特定 ID。您可能会发现动态识别要将脚本绑定到的设备 ID 很有用。
devid=/dev/bus/usb/$(lsusb | grep <yourdevice> | cut -d":" -f1 | cut -d" " -f2,4 --output-delimiter="/")
^ 哪里<yourdevice>
有适当独特的东西来识别您的设备。
然后您就可以使用$devid
您之前使用过的地方了/dev/bus/usb/001/053
。