OS X 是否有相当于 lsusb 的工具

问题描述 投票:0回答:10

这个问题似乎google遍了,但答案都指向使用System Profiler。这很好,但是使用 System Profiler,您得到的只是如下所示的内容:

            DasKeyboard:

              Product ID: 0x1919
              Vendor ID: 0x04d9  (Holtek Semiconductor, Inc.)
              Version: 1.06
              Speed: Up to 1.5 Mb/sec
              Location ID: 0x1d114000 / 11
              Current Available (mA): 500
              Current Required (mA): 100

            USB2.0 Hub:

              Product ID: 0x0608
              Vendor ID: 0x05e3  (Genesys Logic, Inc.)
              Version: 32.98
              Speed: Up to 480 Mb/sec
              Location ID: 0x1d113000 / 10
              Current Available (mA): 500
              Current Required (mA): 100

                Microsoft Basic Optical Mouse v2.0 :

                  Product ID: 0x00cb
                  Vendor ID: 0x045e  (Microsoft Corporation)
                  Version: 1.99
                  Speed: Up to 1.5 Mb/sec
                  Manufacturer: Microsoft 
                  Location ID: 0x1d113200 / 12
                  Current Available (mA): 500
                  Current Required (mA): 100

如果您想要的只是一堆设备描述符的内容,那就太好了,但是

lsusb
为您提供了 so 更多信息 - 有关接口和端点、接口关联、复合设备的信息...您可以在哪里找到此信息操作系统? 一定有有一个工具可以做到这一点吗?

macos usb darwin lsusb
10个回答
210
投票

我厌倦了忘记

system_profiler SPUSBDataType
语法,所以我做了一个
lsusb
替代方案。您可以在here找到它,或者使用自制程序安装它:

brew install lsusb

115
投票

我通常运行此命令来列出 macOS 上的 USB 设备以及有关它们的详细信息:

ioreg -p IOUSB -l -w 0

56
投票

Homebrew 用户:您可以通过从我的水龙头安装

lsusb公式
来获得
usbutils

brew install usbutils

它安装基于 Linux 源的 REAL

lsusb
(版本 007)。


20
投票

在 mac osx 中,您可以使用以下命令:

system_profiler SPUSBDataType

7
投票

如果您是MacPorts的用户,您只需安装usbutils

sudo port install usbutils

如果您没有,这可能是安装它的好机会,它具有其他几个有用的 Linux 工具的端口。


5
投票

我将通过我的帽子尝试这里的答案。

lsusb
脚本几乎无法工作,并且
usbutils
的 macOS 端口不捕获字符串描述符或支持
--tree

它引导我创建了 cyme,一个在底层使用

system_profiler -json
的现代跨平台 USB 列表工具。它还使用
libusb
来获取额外数据/跨平台,并在 Linux 上使用
udev
。它支持
--lsusb
兼容模式,几乎匹配
lsusb
所有参数的输出。它应该会让 macOS
lsusb
痒痒等等。


3
投票

ioreg
怎么样?输出比探查器详细得多,但有点密集。

来源:https://lists.macosforge.org/pipermail/macports-users/2008-July/011115.html


1
投票

至少在 10.10.5 上,

system_profiler SPUSBDataType
输出不是 当插入新的 USB 设备时动态更新, 而
ioreg -p IOUSB -l -w 0
确实如此。


1
投票

在 Mac OS X 上,Xcode 开发人员套件包括 USB Proper.app 应用程序。 这可以在 /Developer/Applications/Utilities/ 中找到。 USB Prober 将允许您检查设备和接口描述符。


0
投票

我会推荐 cyme,它是用 Rust 写的。 https://github.com/tuna-f1sh/cyme

cyme 的示例输出

© www.soinside.com 2019 - 2024. All rights reserved.