Erhalten Sie Seriennummern von angeschlossenen USB-Geräten

Ich suche nach einem Terminalbefehl, um die Seriennummern angeschlossener USB-Geräte auf MacOS-Computern herauszufinden. Gibt es ein Äquivalent zum Linux-Befehl "usb-devices"? Ich habe "ioreg -p IOUSB" versucht, aber die Ausgabe enthält keine Seriennummern.

Antworten (2)

Informationen zu USB-Geräten werden unter Linux anders gespeichert als unter macOS:

  • In Linux ist , usb-devicesein bash Skript , das im Wesentlichen eine Reihe von Textdateien liest, /sys/bus/usb/devices/usb*die mit symbolisch verknüpft sind, die Informationen über die USB-Geräte enthalten, und sie in der Ausgabe formatiert, die Sie unter Linux sehen.

  • In macOS gibt es kein solches Skript , da es die Informationen nicht auf die gleiche Weise speichert. Wenn Sie jedoch Informationen über USB-Geräte ausgeben möchten, die vom Betriebssystem aufgelistet werden, verwenden Sie im Terminal den folgenden Befehl:

    system_profiler SPUSBDataType
    

    Wenn ein USB-Gerät eine Seriennummer hat, wird diese in der Ausgabe angezeigt.


Wie von Allan in seinem Kommentar erwähnt, können Sie den folgenden Befehl verwenden, um die Ausgabe so zu minimieren, dass sie relevante Teile der Geräteinformationen enthält, die den Gerätenamen und die Seriennummer mit einigen zusätzlichen Informationen enthalten.

system_profiler SPUSBDataType | grep "Serial Number" -B5

Beachten Sie, dass dadurch einige der Geräteinformationen im Vergleich zu den von ausgegebenen Informationen verdeckt werden usb-devices, obwohl es sich je nach Bedarf um unnötige Informationen handeln kann.


Als Beispiel ist hier die usb-devicesAusgabe unter Linux für ein 8-GB-USB-Flash-Laufwerk:

T:  Bus=03 Lev=02 Prnt=03 Port=00 Cnt=01 Dev#=  6 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=0781 ProdID=5530 Rev=01.26
S:  Manufacturer=SanDisk
S:  Product=Cruzer
S:  SerialNumber=20042214412B1A33690E
C:  #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=200mA
I:  If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage

Gleiches Gerät unter macOS mit system_profiler SPUSBDataType:

            Cruzer:

              Product ID: 0x5530
              Vendor ID: 0x0781  (SanDisk Corporation)
              Version: 1.26
              Serial Number: 20042214412B1A33690E
              Speed: Up to 480 Mb/sec
              Manufacturer: SanDisk
              Location ID: 0x1d110000 / 7
              Current Available (mA): 500
              Current Required (mA): 200
              Capacity: 8 GB (8,004,304,896 bytes)
              Removable Media: Yes
              Detachable Drive: Yes
              BSD Name: disk3
              Partition Map Type: MBR (Master Boot Record)
              S.M.A.R.T. status: Not Supported
              Volumes:
                disk3s1:
                  Capacity: 2.97 GB (2,966,634,496 bytes)
                  BSD Name: disk3s1
                  Content: 0x17
                NO NAME:
                  Capacity: 110.1 MB (110,100,480 bytes)
                  Available: 4.1 MB (4,124,672 bytes)
                  Writable: Yes
                  File System: MS-DOS FAT16
                  BSD Name: disk3s2
                  Mount Point: /Volumes/NO NAME
                  Content: DOS_FAT_12
                disk3s3:
                  Capacity: 3.92 GB (3,923,232,768 bytes)
                  BSD Name: disk3s3
                  Content: Linux

Ausgabe unter macOS mit system_profiler SPUSBDataType | grep "Serial Number" -B5:

            Cruzer:

              Product ID: 0x5530
              Vendor ID: 0x0781  (SanDisk Corporation)
              Version: 1.26
              Serial Number: 20042214412B1A33690E
Wenn Sie nur die Seriennummern möchten, hängen Sie | grep "Serial Number" -B5an den obigen Befehl an, um das Gerät und die damit verbundene Seriennummer zu erhalten.
Das ist genau das, was ich brauchte. Danke schön. Aber wird dieser Befehl auch von älteren macOS-Versionen unterstützt?
@Phelps, Ja, beide in der Antwort gezeigten Befehle werden in früheren Versionen von OS X/macOS unterstützt.

Übrigens: Ich habe festgestellt, dass, wenn Sie eine externe Festplatte oder SSD über ein externes Gehäuse oder ein USB-zu-SATA-Adapterkabel anschließen, wenn Sie diese Terminalbefehle oder Systeminformationen verwenden, die Seriennummer, Produkt-ID usw. angezeigt werden das Adapterkabel oder das Gehäuse selbst (wahrscheinlich des Controller-Chips im Inneren), nicht die gewünschte SN für die Festplatte oder SSD usw. Zum Beispiel erscheint dieses Bild in meinem Mac Mini > Systeminformationen, wenn ich eine 250-GB-Samsung-Evo-SSD angeschlossen habe Die bereitgestellten Informationen entsprechen dem Adapterkabel, das sich mit einer Produkt-ID von 0x0621 und einer Anbieter-ID von 0x1f75 (Innostor Co, Ltd.) identifiziert, die mit Startech verwandt ist, dem Markennamen bei Amazon für dieses USB-Adapterkabel.
Geben Sie hier die Bildbeschreibung ein