在Cygwin中获取Windows版本

问题描述

| 如何获得Cygwin下当前正在运行的Windows版本? 我正在维护在Mac,Windows和Linux发行版上运行的自动生成脚本,并且我需要能够检测当前正在其下运行的Windows版本。 最好让它返回标准的Windows版本名称,但是我可以将其与其他代码分开的某种代码也很棒。 我想知道的是我是否正在运行7,XP,Server 2008等。 帮助,想法?     

解决方法

        像这样:
eh@winxpsp3 ~
$ echo `cmd /c ver`
 Microsoft Windows XP [Version 5.1.2600]

eh@winxpsp3 ~
$
    ,        您可以在Windows
systeminfo
实用程序中对其进行grep。
systeminfo | grep \'^OS\'
仅操作系统名称:
systeminfo | sed -n \'s/^OS Name:[[:blank:]]*//p\'
例:
$ systeminfo.exe | grep \'^OS\'
OS Name:                   Microsoft Windows 7 Home Premium
OS Version:                6.1.7601 Service Pack 1 Build 7601
OS Manufacturer:           Microsoft Corporation
OS Configuration:          Standalone Workstation
OS Build Type:             Multiprocessor Free
$ systeminfo | sed -n \'s/^OS Name:[[:blank:]]*//p\'
Microsoft Windows 7 Home Premium
    ,        您可以使用
uname -s
并将输出与此进行比较:   NT-5.0 = W2000      NT-5.1 = XP      NT-6.0 = Vista      NT-6.1 = W7 我正在运行Windows 7 64位,所以我的输出是:
CYGWIN_NT-6.1-WOW64
。您可以在此处查看更多信息。