Liste der USB-Geräte in der OSX-Befehlszeile


Antworten:


148

Zusätzlich zu system_profiler SPUSBDataType(vorgeschlagen von @kjs) können Sie auch Folgendes verwenden ioreg -p IOUSB:

$ ioreg -p IOUSB 
+-o Root  <class IORegistryEntry, id 0x100000100, retain 10>
  +-o EHCI Root Hub Simulation@1A,7  <class IOUSBRootHubDevice, id 0x100000227,$
  | +-o HubDevice@fa100000  <class IOUSBHubDevice, id 0x10000027a, registered, $
  | | +-o Apple Internal Keyboard / Trackpad@fa120000  <class IOUSBDevice, id 0$
  | | +-o BRCM2070 Hub@fa110000  <class IOUSBHubDevice, id 0x1000002b4, registe$
  | |   +-o Bluetooth USB Host Controller@fa113000  <class IOUSBDevice, id 0x10$
  | +-o FaceTime HD Camera (Built-in)@fa200000  <class IOUSBDevice, id 0x100000$
  +-o EHCI Root Hub Simulation@1D,7  <class IOUSBRootHubDevice, id 0x100000228,$
    +-o HubDevice@fd100000  <class IOUSBHubDevice, id 0x10000027b, registered, $
      +-o IR Receiver@fd110000  <class IOUSBDevice, id 0x100000288, registered,$

Standardmäßig wird das Fenster auf die Breite (im obigen Beispiel 80 Zeichen) gekürzt. Sie können also ein Fenster hinzufügen -w0, um eine Anzeige in voller Breite zu erhalten. Außerdem werden beim Hinzufügen -lDetails (wahrscheinlich mehr als erforderlich) zu den einzelnen Geräten angezeigt:

$ ioreg -p IOUSB -w0 -l
    +-o Root  <class IORegistryEntry, id 0x100000100, retain 10>
  | {
  |   "IOKitBuildVersion" = "Darwin Kernel Version 14.0.0: Fri Sep 19 00:26:44 PDT 2014; root:xnu-2782.1.97~2/RELEASE_X86_64"
  |   "OS Build Version" = "14B25"
  |   "OSKernelCPUSubtype" = 3
  |   "OSKernelCPUType" = 16777223
  |   "OSPrelinkKextCount" = 185
  |   "IOConsoleLocked" = No
  |   "IORegistryPlanes" = {"IOACPIPlane"="IOACPIPlane","IOPower"="IOPower","IODeviceTree"="IODeviceTree","IOService"="IOService","IOUSB"="IOUSB","IOFireWire"="IOFireWire"}
[...etc...]

[EDIT]: Wenn Sie nur die Gerätenamen möchten, können Sie die Grundliste filtern, um den Müll zu beseitigen:

$ ioreg -p IOUSB -w0 | sed 's/[^o]*o //; s/@.*$//' | grep -v '^Root.*'
EHCI Root Hub Simulation
HubDevice
Apple Internal Keyboard / Trackpad
BRCM2070 Hub
Bluetooth USB Host Controller
FaceTime HD Camera (Built-in)
EHCI Root Hub Simulation
HubDevice
IR Receiver

zeigt immer noch mehr als ich wollte, ist aber eine bequeme 1 Zeile pro Geräteliste
Milliways

Gibt es eine bequeme Möglichkeit, diese Informationen zum Bereitstellen eines Geräts zu verwenden? Ich habe eine Ecke, ioregdie als verbunden angezeigt wird , aber diskutil listnicht angezeigt wird. Gibt es irgendwelche Informationen ioreg, die ich verwenden könnte, um den Winkel zu montieren?
stiemannkj1

@ stiemannkj1: Ich kenne mich mit Ecken nicht aus, daher bin ich mir nicht sicher, wie sie auf einem Mac angezeigt werden sollen. Wie ich es verstehe, erfordert das Mounten ein Gerätelaufwerk, das es als eine Art Festplattenlaufwerk erkennt (sollte der Standard-USB-Treiber dies tun?) Und auf dem sich so etwas wie ein erkennbares Dateisystem befindet. Ich kenne das Treibersystem nicht gut genug, um es zu überprüfen, aber ich glaube nicht, dass ioregich Ihnen sagen kann, was Sie wissen möchten.
Gordon Davisson

Sie können immer Rohr den Ausgang, wie zum Sublime: ioreg -p IOUSB -w0 -l | subl. Dieser ioreg-Befehl zeigt auch die Geräte an, die meine virtuelle Box verwendet, was sehr hilfreich ist.
rjferguson

72

Führen Sie diesen Befehl aus:

system_profiler SPUSBDataType

Einige Leute sind nur? *!
Ruskes

1
Danke - das sieht aus wie das System Information(was es wahrscheinlich ist), zeigt aber viel zu viele Details, ist aber praktisch zu wissen
Milliways

1
Dies ist eine bessere Antwort, wenn Sie Zugriff auf Felder wie Vendor ID oder Product ID benötigen.
CodeGnome

2
Hier werden verschiedene Informationen angezeigt, z. B. der Stromverbrauch in Ampere.
Simon Woodside

5
Ein zusätzlicher Vorteil dieses Befehls ist die Möglichkeit, in XML auszugeben, wenn eine syntaktisch analysierbare Ausgabe erforderlich ist:system_profiler -xml SPUSBDataType
Andre M
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.