
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 -a
nã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.
- É lento porque gera um despejo completo do system_profiler da máquina, reunindo todas as informações de inventário de hardware e software.
- 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_profiler
pode ser executado como system_profiler SPSoftwareDataType
. Não há necessidade de passar por uma produção enorme.