it-swarm-pt.com

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

Frequentemente, me encontro SSHing em várias máquinas OS X, e seria útil se eu soubesse em qual versão do OS X eu estava enquanto fazia isso. uname -a não funciona muito bem, pois as versões do kernel do Darwin nem sempre mudam com o restante do sistema.

69
Benjamin Pollack

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 que sugeriu system_profiler | grep 'System Version' é o que eu tentei usar no passado, mas ele tem 2 problemas.

  1. É lento, pois gera um despejo completo de 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 ao longo do tempo. por exemplo. A saída de grep para 'Número de Série' em 10.6.4 é "Número de Série (sistema): ZNNNNNZNZZZZ", enquanto em 10.4.11 era "Número de Série: ZNNNNZNZZZZZ" - sendo a importância a capacidade de análise do a saída e a parte add "(system)" podem ser problemáticas, a menos que você esteja esperando a alteração.
79
Mike Gray

A maneira mais fácil é:

$ sw_vers -productVersion
10.6.4

From http://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 em execução.

38
Benjamin Oakes

Tente o seguinte:

 system_profiler  | grep 'System Version'

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

8
kbyrd

Aqui está um artigo do blog com instruções Como obter a versão do Mac OS X em um script de shell

OS_VERSION=`/usr/bin/defaults read "$3/System/Library/CoreServices/SystemVersion" ProductVersion`
echo "$OS_VERSION"
6
Larry Smithmier

O system_profiler pode ser executado como system_profiler SPSoftwareDataType. Não há necessidade de grep através de uma enorme produção.

3
user242114