Como posso saber em qual versão do OS X estou na linha de comando?

Como posso saber em qual versão do OS X estou na linha de comando?

Freqüentemente me encontro usando SSH em várias máquinas OS X, e seria útil se eu pudesse saber qual versão do OS XI estava ativada quando estou fazendo isso. uname -anão funciona muito bem, já que as versões do kernel do Darwin nem sempre mudam com o resto do sistema.

Responder1

sw_vers

Minha sugestão é usar sw_vers. Exemplo de saída a partir de 10.6.4:

> sw_vers 
ProductName:    Mac OS X
ProductVersion: 10.6.4
BuildVersion:   10F569

A resposta sugerida system_profiler | grep 'System Version'é a que tentei usar no passado, mas tem 2 problemas.

  1. É lento porque gera um despejo completo do system_profiler da máquina, reunindo todas as informações de inventário de hardware e software.
  2. A saída do system_profiler mudou com o tempo. por exemplo, a saída de grep'Número de série' em 10.6.4 é "Número de série (sistema): ZNNNNNZNZZZ", enquanto em 10.4.11 era "Número de série: ZNNNNZNZZZZ" - a importância é a capacidade de análise da saída e a adição " (sistema)" pode ser problemática, a menos que você esteja esperando a mudança.

Responder2

A maneira mais fácil é:

$ sw_vers -productVersion
10.6.4

Dehttp://tinyapps.org/blog/mac/201008140700_os_x_version_terminal.html:

$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.6.4
BuildVersion:  
10F569
$ sw_vers -productVersion
10.6.4

Especialmente útil ao redefinir uma senha no modo de usuário único, pois o método varia de acordo com a versão do OS X que está sendo executada.

Responder3

Experimente isto:

 system_profiler  | grep 'System Version'

A resposta de Mike Gray é melhor que isso. Por favor veja isso

Responder4

O system_profilerpode ser executado como system_profiler SPSoftwareDataType. Não há necessidade de passar por uma produção enorme.

informação relacionada