【问题标题】:python finding mac os build numberpython查找mac os内部版本号
【发布时间】:2014-09-04 20:15:07
【问题描述】:

如何找到我的 Mac OS X 内部版本号?如果可能的话,有没有办法使用 Python 找到它?我想使用 Python,这样我就可以以自动方式自动制作 OS X .app 文件。

编辑:我看到“标记为重复”消息,并意识到人们认为我的意思是 Mac OS X 版本号。我说的是BUILD号。

【问题讨论】:

  • “内部版本号”是什么意思?
  • Info.plist 文件中创建名为 BuildMachineOSBuild 的应用程序所需的信息位,内部版本号显示为here

标签: python macos


【解决方案1】:

奇怪的是,OS X 内部版本号似乎无法通过platform 模块获得。 OS X 确实提供了一个sw_vers 命令,可用于通过os.popen 检索内部版本号。

示例:

import os
print(os.popen("sw_vers -buildVersion").read().strip())

在 OS X 10.9.4 Mavericks 上的输出:

13E28

不理想,但它有效!

【讨论】:

    【解决方案2】:

    试试platform 模块?它将为您提供 Python 所知道的有关操作系统版本的所有信息,以及有关 Python 解释器本身的信息。

    https://docs.python.org/2/library/platform.htm

    【讨论】:

      【解决方案3】:

      https://stackoverflow.com/a/11697362/871119

      Python 版本可能如下所示:

      import ctypes
      
      libc = ctypes.CDLL("libc.dylib")
      size = ctypes.c_uint(256)
      buf = ctypes.create_string_buffer(size.value)
      
      if libc.sysctlbyname("kern.osversion", buf, ctypes.byref(size), None, 0) == 0:
          print buf.value
      else:
          print "Fails"
      

      在我的 Mac 上使用系统提供的 Python 版本。

      【讨论】:

        【解决方案4】:

        要找到当前的工作平台,我通常会使用

            sys
        

        模块,带有 .platform 来获取此代码

            import sys
            sys.platform
        'win32'
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-03-20
          • 2019-07-19
          • 1970-01-01
          • 2012-06-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多