我正在使用两个 Wavecom 16 端口调制解调器。当我将调制解调器连接到我的系统时,我能够列出所有/dev/ttyUSB
端口名称,但我也想知道,哪个调制解调器包含端口 0 到 16,哪个调制解调器包含端口 17 到 32?
调制解调器可能在一天内多次连接和移除,所以我还想在调制解调器断开连接并再次连接时保留日志。
知道如何使用 c/c++/php script/node.js 这样做吗?
您可以从sys
文件系统中获取此信息。从 shell 中检查很容易,然后执行相同的程序:
cd /sys/devices
find -name "ttyUSB0"
. 它可能会在类似的地方找到它们./pci0000:00/0000:00:1d.0/usb2/2-2/2-2.1/2-2.1:1.0/...
该pci*
部分是USB控制器。有趣的2-2.1
是 USB 设备。在该目录中有很多文件可以识别您的设备:
serial
: 序列号。可能是你想要的。idVendor
和idProduct
:设备的 USB 标识符。步骤 1 和 2 的一个简单替代方法是:
cd /sys/class/tty/
readlink ttyUSBn
将为您提供设备目录的完整路径。作为脚注,请注意,有些部分sysfs
被认为是 API 稳定的,而有些部分则不是。有关详细信息,请参阅官方 sysfs 规则。