205 votes

Liste des périphériques USB sur la ligne de commande OSX

Puis-je lister les périphériques USB sous OSX - similaire à lsusb sur Linux. Je sais que je peux accéder à partir de System Information .

0 votes

268voto

Gordon Davisson Points 30215

En plus de system_profiler SPUSBDataType (suggéré par @kjs), vous pouvez aussi utiliser 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,$

Par défaut, il est fixé à la largeur de la fenêtre (80 caractères dans l'exemple ci-dessus), vous pouvez donc ajouter -w0 pour obtenir un affichage en pleine largeur. De même, l'ajout de -l affichera des détails (probablement plus que ce dont vous avez besoin) sur chacun des appareils :

$ 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] : Si vous ne voulez que les noms des appareils, vous pouvez filtrer la liste de base pour éliminer les éléments inutiles :

$ 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

0 votes

Montre toujours plus que ce que je voulais, mais c'est une liste pratique d'une ligne par appareil.

2 votes

Existe-t-il un moyen pratique d'utiliser ces informations pour monter un appareil ? J'ai un Nook qui ioreg montre qu'il est connecté, mais diskutil list ne le montre pas. Y a-t-il des informations de ioreg que je pourrais utiliser pour monter le nook ?

0 votes

@stiemannkj1 : Je ne suis pas familier avec les Nooks, donc je ne suis pas sûr de savoir comment ils sont censés apparaître sur un Mac. D'après ce que je comprends, pour le monter, il faut un lecteur de périphérique qui le reconnaisse comme une ligne de disque (le pilote USB standard devrait-il le faire ?), et avoir quelque chose comme un système de fichiers reconnaissable dessus. Je ne suis pas assez familier avec le système de pilotes pour savoir comment vérifier cela, mais je ne pense pas que le système de fichiers soit reconnu. ioreg peut vous dire ce que vous voulez savoir.

116voto

Kevin Stewart Points 1070

Exécutez cette commande :

system_profiler SPUSBDataType

0 votes

Les commentaires ne sont pas destinés à une discussion approfondie ; cette conversation a été déplacé vers le chat .

1 votes

Vous pourriez ajouter qu'il s'agit de la contrepartie en ligne de commande de l'application UI "System Information".

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X