我正在运行什么操做系统?

我要查看我是在Windows仍是Unix等上,我须要查看什么? html


#1楼

对于Jython,我发现得到OS名称的惟一方法是检查os.name Java属性(在WINXP上为Jython 2.5.3尝试了sysosplatform模块): java

def get_os_platform():
    """return platform name, but for Jython it uses os.name Java property"""
    ver = sys.platform.lower()
    if ver.startswith('java'):
        import java.lang
        ver = java.lang.System.getProperty("os.name").lower()
    print('platform: %s' % (ver))
    return ver

#2楼

若是您想要用户可读的数据但仍然很详细,则能够使用platform.platform() python

>>> import platform
>>> platform.platform()
'Linux-3.3.0-8.fc16.x86_64-x86_64-with-fedora-16-Verne'

您能够拨打如下几种可能的电话来识别本身的位置 linux

import platform
import sys

def linux_distribution():
  try:
    return platform.linux_distribution()
  except:
    return "N/A"

print("""Python version: %s
dist: %s
linux_distribution: %s
system: %s
machine: %s
platform: %s
uname: %s
version: %s
mac_ver: %s
""" % (
sys.version.split('\n'),
str(platform.dist()),
linux_distribution(),
platform.system(),
platform.machine(),
platform.platform(),
platform.uname(),
platform.version(),
platform.mac_ver(),
))

该脚本的输出在几种不一样的系统(Linux,Windows,Solaris,MacOS)上运行,而且体系结构(x86,x64,Itanium,power pc,sparc)可在如下位置得到: https : //github.com/hpcugent/easybuild/ Wiki / OS_flavor_name_version git

以Ubuntu 12.04服务器为例: github

Python version: ['2.6.5 (r265:79063, Oct  1 2012, 22:04:36) ', '[GCC 4.4.3]']
dist: ('Ubuntu', '10.04', 'lucid')
linux_distribution: ('Ubuntu', '10.04', 'lucid')
system: Linux
machine: x86_64
platform: Linux-2.6.32-32-server-x86_64-with-Ubuntu-10.04-lucid
uname: ('Linux', 'xxx', '2.6.32-32-server', '#62-Ubuntu SMP Wed Apr 20 22:07:43 UTC 2011', 'x86_64', '')
version: #62-Ubuntu SMP Wed Apr 20 22:07:43 UTC 2011
mac_ver: ('', ('', '', ''), '')

#3楼

在Windows 8上有趣的结果: centos

>>> import os
>>> os.name
'nt'
>>> import platform
>>> platform.system()
'Windows'
>>> platform.release()
'post2008Server'

编辑:那是一个错误 服务器


#4楼

若是您不是在寻找内核版本等,而是在寻找Linux发行版,则可能须要使用如下代码 post

在python2.6 +中 ui

>>> import platform
>>> print platform.linux_distribution()
('CentOS Linux', '6.0', 'Final')
>>> print platform.linux_distribution()[0]
CentOS Linux
>>> print platform.linux_distribution()[1]
6.0

在python2.4中

>>> import platform
>>> print platform.dist()
('centos', '6.0', 'Final')
>>> print platform.dist()[0]
centos
>>> print platform.dist()[1]
6.0

显然,这只有在Linux上运行时才有效。 若是但愿跨平台使用更通用的脚本,能够将其与其余答案中给出的代码示例混合使用。


#5楼

>>> import os
>>> print os.name
posix
>>> import platform
>>> platform.system()
'Linux'
>>> platform.release()
'2.6.22-15-generic'

platform.system()的输出以下:

  • Linux: Linux
  • Mac: Darwin
  • Windows: Windows

请参阅: 平台-访问基础平台的标识数据

相关文章
相关标签/搜索