mac终端可通过system_profiler spusbdatatype命令查看完整usb设备树,含设备名、厂商等信息;ioreg -p iousb用于内核级诊断;log stream命令可实时监控插拔事件。

在Mac终端中快速确认U盘、手机、打印机等USB设备是否被系统识别并正确挂载,是排查外设故障的第一步。直接执行命令即可获取完整设备树,无需打开图形界面。
用system_profiler命令列出全部USB设备
这是最常用且信息最全的方法,输出包含设备名、厂商、端口路径、协议版本和供电状态。
打开“终端”应用(Command + 空格 → 输入“终端” → 回车)。
输入以下命令并回车:system_profiler SPUSBDataType。
等待几秒,屏幕将滚动显示所有已枚举的USB设备,包括内置摄像头、键盘集线器、外接SSD等;【未出现在列表中的设备,说明系统根本未检测到物理连接】。
若只想快速扫一眼设备名称,可加过滤:system_profiler SPUSBDataType | grep "Product:"。
用ioreg命令查看内核级设备路径
当system_profiler无响应或设备显示为“Unknown Device”时,ioreg能穿透驱动层,暴露真实硬件节点。
方法一:列出所有USB相关设备节点
在终端中运行:ioreg -p IOUSB。
方法二:精简显示设备名与位置
运行:ioreg -p IOUSB -l | grep -E "(product|locationID|vendor)"。
注意:ioreg输出的是原始I/O注册表,部分设备可能显示为“AppleUSBHostLegacyController”或“IOUSBHostDevice”,这表示控制器已加载但设备未完成枚举——此时应检查供电或线缆。
实时监控USB设备插拔事件
当你反复插拔设备却无法确定系统是否捕获到变化时,用这个命令盯住终端就能立刻看到反应。
第一步:先清屏并准备监听
输入 clear 回车,让终端干净。
第二步:运行持续监听命令iosnoop -n usb(需先安装Instruments工具包)
或更通用的替代方案:log stream --predicate 'subsystem == "com.apple.usb" || subsystem == "com.apple.iokit"' --info。
第三步:插上目标USB设备
终端将立即打印类似“USB device attached: SanDisk Ultra Fit”的日志行;拔掉时则出现“device detached”提示。
这一步不需要提前知道设备型号,纯靠日志触发判断,适合现场快速验证物理连通性。











