首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何找出哪个设备对应于/sys/bus/usb/设备/deviceN

如何找出哪个设备对应于/sys/bus/usb/设备/deviceN
EN

Server Fault用户
提问于 2019-09-18 07:23:17
回答 1查看 1.8K关注 0票数 1

我有一个设备连接到我的Debian linux盒,lsusb说:

代码语言:javascript
复制
Bus 002 Device 005: ID 0525:a4a7 Netchip Technology, Inc. Linux-USB Serial Gadget (CDC ACM mode)

在……里面

代码语言:javascript
复制
/sys/bus/usb/devices/

我有过

代码语言:javascript
复制
drwxr-xr-x 4 root root 0 Sep  7 14:27 ..
lrwxrwxrwx 1 root root 0 Sep  7 14:27 1-0:1.0 -> ../../../devices/pci0000:00/0000:00:1a.7/usb1/1-0:1.0
lrwxrwxrwx 1 root root 0 Sep  7 14:27 2-0:1.0 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2/2-0:1.0
lrwxrwxrwx 1 root root 0 Sep 13 08:32 2-3 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2/2-3
lrwxrwxrwx 1 root root 0 Sep 13 08:32 2-3:2.0 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2/2-3/2-3:2.0
lrwxrwxrwx 1 root root 0 Sep 13 08:32 2-3:2.1 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2/2-3/2-3:2.1
lrwxrwxrwx 1 root root 0 Sep  7 14:27 3-0:1.0 -> ../../../devices/pci0000:00/0000:00:1a.0/usb3/3-0:1.0
lrwxrwxrwx 1 root root 0 Sep  7 14:27 4-0:1.0 -> ../../../devices/pci0000:00/0000:00:1d.0/usb4/4-0:1.0
lrwxrwxrwx 1 root root 0 Sep  7 14:27 5-0:1.0 -> ../../../devices/pci0000:00/0000:00:1d.1/usb5/5-0:1.0
lrwxrwxrwx 1 root root 0 Sep  7 14:27 6-0:1.0 -> ../../../devices/pci0000:00/0000:00:1d.2/usb6/6-0:1.0
lrwxrwxrwx 1 root root 0 Sep  7 14:27 usb1 -> ../../../devices/pci0000:00/0000:00:1a.7/usb1
lrwxrwxrwx 1 root root 0 Sep  7 14:27 usb2 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2
lrwxrwxrwx 1 root root 0 Sep  7 14:27 usb3 -> ../../../devices/pci0000:00/0000:00:1a.0/usb3
lrwxrwxrwx 1 root root 0 Sep  7 14:27 usb4 -> ../../../devices/pci0000:00/0000:00:1d.0/usb4
lrwxrwxrwx 1 root root 0 Sep  7 14:27 usb5 -> ../../../devices/pci0000:00/0000:00:1d.1/usb5
lrwxrwxrwx 1 root root 0 Sep  7 14:27 usb6 -> ../../../devices/pci0000:00/0000:00:1d.2/usb6

如何找出这是哪一种装置?

EN

回答 1

Server Fault用户

发布于 2019-09-18 08:23:42

我找到/修改了一个脚本来获得基于/sys输出的lsusb设备。

代码语言:javascript
复制
#!/bin/bash
#
# usb2sys - find lsusb device in /sys file system
#

die()
{
    echo "$@"
    exit 1
}

[[ $# -lt 1 ]] && die "need vendor and product ids (from lsusb) as dddd:dddd"

vendor=${1%:*}
product=${1##*:}

sys=/sys/bus/usb/devices/
cd $sys

for d in *; do
    path=$sys$d
    if [ -f $path/idProduct ]; then
      prod=$( cat $path/idProduct )
      vend=$( cat $path/idVendor )

      if [ $prod = $product -a $vend = $vendor ]; then
        echo prod = $prod
        echo vend = $vend
        echo /sys device is $path
      fi
    fi
done

您可以像这样使用脚本

代码语言:javascript
复制
lsusb | cut -d ' ' -f 6 | xargs -L 1 ./usb2sys

输出将类似于

代码语言:javascript
复制
prod = 0002
vend = 1d6b
/sys device is /sys/bus/usb/devices/usb1
票数 4
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/984643

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档