linux ttyusb读写_如何在Linux上找到所有串行设备(ttyS,ttyUSB,..)而不打开它们?

通过分析/Linux/class/tty目录下的内容,可以找到系统中的所有TTY设备,包括ttyUSB。通过查看设备的dev文件获取主要/次要节点,然后在/dev目录下搜索匹配的设备名。对于识别实际的串行设备,可以检查设备的driver条目来排除虚拟终端和伪终端。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/ sys文件系统应该包含足够的信息为您的任务。我的系统(2.6.32-40-通用#87-Ubuntu)建议:

/sys/class/tty

其中给出了系统已知的所有TTY设备的描述。修剪下来的例子:

# ll /sys/class/tty/ttyUSB*

lrwxrwxrwx 1 root root 0 2012-03-28 20:43 /sys/class/tty/ttyUSB0 -> ../../devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.4/2-1.4:1.0/ttyUSB0/tty/ttyUSB0/

lrwxrwxrwx 1 root root 0 2012-03-28 20:44 /sys/class/tty/ttyUSB1 -> ../../devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.3/2-1.3:1.0/ttyUSB1/tty/ttyUSB1/

按照以下链接之一:

# ll /sys/class/tty/ttyUSB0/

insgesamt 0

drwxr-xr-x 3 root root 0 2012-03-28 20:43 ./

drwxr-xr-x 3 root root 0 2012-03-28 20:43 ../

-r--r--r-- 1 root root 4096 2012-03-28 20:49 dev

lrwxrwxrwx 1 root root 0 2012-03-28 20:43 device -> ../../../ttyUSB0/

drwxr-xr-x 2 root root 0 2012-03-28 20:49 power/

lrwxrwxrwx 1 root root 0 2012-03-28 20:43 subsystem -> ../../../../../../../../../../class/tty/

-rw-r--r-- 1 root root 4096 2012-03-28 20:43 uevent

这里的dev文件包含这些信息:

# cat /sys/class/tty/ttyUSB0/dev

188:0

这是主要/次要节点。这些可以在/ dev目录中搜索以获得用户友好的名称:

# ll -R /dev |grep "188, *0"

crw-rw---- 1 root dialout 188, 0 2012-03-28 20:44 ttyUSB0

/ sys / class / tty dir包含所有TTY设备,但您可能希望排除那些虚拟终端和伪终端。我建议你只检查那些有设备/驱动程序条目:

# ll /sys/class/tty/*/device/driver

lrwxrwxrwx 1 root root 0 2012-03-28 19:07 /sys/class/tty/ttyS0/device/driver -> ../../../bus/pnp/drivers/serial/

lrwxrwxrwx 1 root root 0 2012-03-28 19:07 /sys/class/tty/ttyS1/device/driver -> ../../../bus/pnp/drivers/serial/

lrwxrwxrwx 1 root root 0 2012-03-28 19:07 /sys/class/tty/ttyS2/device/driver -> ../../../bus/platform/drivers/serial8250/

lrwxrwxrwx 1 root root 0 2012-03-28 19:07 /sys/class/tty/ttyS3/device/driver -> ../../../bus/platform/drivers/serial8250/

lrwxrwxrwx 1 root root 0 2012-03-28 20:43 /sys/class/tty/ttyUSB0/device/driver -> ../../../../../../../../bus/usb-serial/drivers/ftdi_sio/

lrwxrwxrwx 1 root root 0 2012-03-28 21:15 /sys/class/tty/ttyUSB1/device/driver -> ../../../../../../../../bus/usb-serial/drivers/ftdi_sio/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值