Rud*_*ura 17
以下是如何使用内置函数在AppleScript中获取OSX版本:
set sysinfo to system info set osver to system version of sysinfo
在OS X Mavericks上,结果是"10.9".
一内胆: set osver to system version of (system info)
Mic*_*sai 13
您可以使用以下命令将OS版本作为显示字符串获取:
set _versionString to system version of (system info)
Run Code Online (Sandbox Code Playgroud)
如果要将其与其他版本进行比较,请务必使用considering numeric strings
:
considering numeric strings
set _newEnough to _versionString ? "10.9"
end considering
Run Code Online (Sandbox Code Playgroud)
否则,您可能遇到诸如"10.4.11"小于"10.4.9"或"10.10"小于"10.9"的问题.
你也可以使用system attribute
.这使您可以将版本号作为整数获取,这样您就不必担心比较以点分隔的字符串:
set _versionInteger to system attribute "sysv" -- 4240 == 0x1090 (Mac OS X 10.9)
set _isMavericksOrBetter to (system attribute "sysv") ? 4240 -- 0x1090
set _isMountainLionOrBetter to (system attribute "sysv") ? 4224 -- 0x1080
set _isLionOrBetter to (system attribute "sysv") ? 4208 -- 0x1070
Run Code Online (Sandbox Code Playgroud)
您还可以使用system attribute
获取单个版本组件而无需解析字符串:
set _major to system attribute "sys1" -- 10
set _minor to system attribute "sys2" -- 9
set _bugFix to system attribute "sys3" -- 0
Run Code Online (Sandbox Code Playgroud)
我不是在Mac上,所以可能有更好的方法来实现这一点,但首先想到的方法是执行shell命令来查询操作系统版本.
http://developer.apple.com/technotes/tn2002/tn2065.html#TNTAG2
http://developer.apple.com/DOCUMENTATION/Darwin/Reference/ManPages/man1/sw_vers.1.html
根据这些参考资料,您可能希望执行以下操作:
set os_version to do shell script "sw_vers -productVersion"
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8048 次 |
最近记录: |