Come posso trovare il numero di serie su un mac a livello di programmazione dal terminale?

34

Quale comando posso utilizzare per recuperare il numero di serie del sistema dalla riga di comando di Unix? Poiché uname produrrà alcune informazioni sul software e sull'hardware, vorrei recuperare il numero di serie da un comando da utilizzare in uno script.

    
posta bmike 13.02.2012 - 19:49
fonte

3 risposte

47

Il comando system_profiler fornisce una risposta diretta è facilmente leggibile dall'uomo (ammesso che tu sia il 10.3 o più recente), ma puoi anche usare ioreg per l'attività poiché generalmente si completa più rapidamente.

system_profiler SPHardwareDataType è il tipo di dati che contiene le informazioni sull'hardware di base e puoi utilizzare grep o awk per eliminare ulteriormente le cose, se necessario:

system_profiler SPHardwareDataType | awk '/Serial/ {print $4}'

o

ioreg -l | awk '/IOPlatformSerialNumber/ { print $4;}'

Entrambi questi comandi richiedono tra 0,5 e 0,2 secondi per funzionare su moderni SSD Mac, quindi se vuoi ottimizzare il comando e rimuovi " puoi avere la tua risposta in 0.005s circa:

ioreg -c IOPlatformExpertDevice -d 2 | awk -F\" '/IOPlatformSerialNumber/{print $(NF-1)}'
    
risposta data 13.02.2012 - 19:53
fonte
14

Anche questo funziona ...

ioreg -l | grep IOPlatformSerialNumber
    
risposta data 13.02.2014 - 20:04
fonte
2

Per semplificare la memorizzazione, utilizza una ricerca senza distinzione tra maiuscole e minuscole:

ioreg -l | grep -i serialnumber | grep -i platform
    
risposta data 01.08.2017 - 17:23
fonte

Leggi altre domande sui tag