it-swarm-tr.com

Komut satırından hangi OS X sürümünün bulunduğumu nasıl anlayabilirim?

Sık sık kendimi çeşitli OS X makinelerinde SSHing olarak buldum ve bunu yaparken OS X'in hangi versiyonunda olduğumu söyleyebilmem yararlı olurdu. uname -a tam olarak çalışmaz, çünkü Darwin'in çekirdek sürümleri her zaman sistemin geri kalanıyla değişmez.

69
Benjamin Pollack

sw_vers

Benim önerim sw_vers. 10.6.4 itibarıyla örnek çıktı:

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

Önerilen cevap system_profiler | grep 'System Version' geçmişte kullanmaya çalıştım, ama 2 sorunları var.

  1. Makinenin tam bir system_profiler dökümü oluşturduğundan, tüm donanım ve yazılım envanter bilgilerini topladığı için yavaştır.
  2. System_profiler çıktısı zamanla değişti. Örneğin. 10.6.4'te 'Seri Numarası' için grep çıktısı "Seri Numarası (sistem): ZNNNNNZNZZZ" iken, 10.4.11'de "Seri Numarası: ZNNNNZNZZZZ" - önem derecesi Çıkışı ve "(sistem)" ekle parçasını, değişiklik beklemiyorsanız sorunlu olabilir.
79
Mike Gray

En kolay yol:

$ sw_vers -productVersion
10.6.4

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

Tek kullanıcı modunda bir parola sıfırlanırken özellikle kullanışlıdır, çünkü yöntem hangi OS X sürümünün çalıştığına bağlı olarak değişir.

38
Benjamin Oakes

Bunu dene:

 system_profiler  | grep 'System Version'

Mike Gray'in cevabı bundan daha iyi. Lütfen bakın

8
kbyrd

İşte talimatları içeren bir Blog makalesi Mac OS X Sürümü Kabuk Betiğinde Nasıl Alınır

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

system_profiler, system_profiler SPSoftwareDataType Olarak çalıştırılabilir. Büyük çıktı ile sırıtmaya gerek yok.

3
user242114