¿Cómo puedo encontrar el número de serie en un mac programáticamente desde el terminal?

34

¿Qué comando puedo usar para recuperar el número de serie del sistema desde la línea de comandos de Unix? Como uname generará cierta información sobre el software y el hardware, me gustaría recuperar el número de serie de un comando para usar en una secuencia de comandos.

    
pregunta bmike 13.02.2012 - 19:49

3 respuestas

47

El comando system_profiler proporciona una respuesta directa eso es fácilmente legible para los humanos (suponiendo que está en 10.3 o más reciente), pero también puede usar ioreg para la tarea, ya que generalmente se completa más rápido.

system_profiler SPHardwareDataType es el tipo de datos que contiene la información del hardware central, y puede usar grep o awk para reducir aún más las cosas según sea necesario:

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

o

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

Ambos comandos tardan entre 0,5 y 0,2 segundos en ejecutarse en Macs SSD modernas, por lo que si desea optimice el comando y eliminar el " puede tener su respuesta en 0.005s más o menos:

ioreg -c IOPlatformExpertDevice -d 2 | awk -F\" '/IOPlatformSerialNumber/{print $(NF-1)}'
    
respondido por el bmike 13.02.2012 - 19:53
13

Esto también funciona ...

ioreg -l | grep IOPlatformSerialNumber
    
respondido por el MrPool 13.02.2014 - 20:04
2

Para que sea más fácil de recordar, utilice una búsqueda que no distinga mayúsculas y minúsculas:

ioreg -l | grep -i serialnumber | grep -i platform
    
respondido por el Jared 01.08.2017 - 17:23

Lea otras preguntas en las etiquetas