Я часто нахожусь в SSHing на различных машинах OS X, и было бы полезно, если бы я мог сказать, какая версия OS XI была, когда я делаю это. uname -a
не совсем работает, так как версии ядра Дарвина не всегда меняются вместе с остальной системой.
Я часто нахожусь в SSHing на различных машинах OS X, и было бы полезно, если бы я мог сказать, какая версия OS XI была, когда я делаю это. uname -a
не совсем работает, так как версии ядра Дарвина не всегда меняются вместе с остальной системой.
Ответы:
sw_vers
Мое предложение заключается в использовании sw_vers
. Пример вывода по состоянию на 10.6.4:
> sw_vers
ProductName: Mac OS X
ProductVersion: 10.6.4
BuildVersion: 10F569
Предложенный ответ system_profiler | grep 'System Version'
- это то, что я пытался использовать в прошлом, но у него есть 2 проблемы.
grep
для «Serial Number» на 10.6.4 выводится «Serial Number (system): ZNNNNNZNZZZ», в то время как для 10.4.11 это было «Serial Number: ZNNNNZNZZZZ» - важность - это возможность анализа выходных данных и сложения » (система) "кусок может быть проблематичным, если вы не ожидаете изменения.Самый простой способ это:
$ 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
Особенно удобно при сбросе пароля в однопользовательском режиме, поскольку метод зависит от того, какая версия OS X работает.
grep -2 ProductVersion /System/Library/CoreServices/SystemVersion.plist
. Алоха, Майлз
Вот статья в блоге с инструкциями Как получить версию Mac OS X в сценарии оболочки
OS_VERSION=`/usr/bin/defaults read "$3/System/Library/CoreServices/SystemVersion" ProductVersion`
echo "$OS_VERSION"
system_profiler
Может работать как system_profiler SPSoftwareDataType
. Нет необходимости просматривать огромный вывод.
system_profiler
…` ``