Scripting 所有windows变体的systeminfo输出

Scripting 所有windows变体的systeminfo输出,scripting,operating-system,Scripting,Operating System,有人能给我指一下显示windows信息的systeminfo命令行工具输出的文档吗 在我的windows xp机器上,我得到了这个 操作系统名称:Microsoft Windows XP Professional 操作系统版本:5.1.2600 Service Pack 3 Build 2600 操作系统制造商:微软公司 对于尽可能多的windows版本,这是我需要知道的操作系统名称 因为我想创建一个脚本,在所有windows版本上执行审计功能,我使用的一些命令是特定于版本的 除非有比使用

有人能给我指一下显示windows信息的systeminfo命令行工具输出的文档吗

在我的windows xp机器上,我得到了这个

操作系统名称:Microsoft Windows XP Professional 操作系统版本:5.1.2600 Service Pack 3 Build 2600 操作系统制造商:微软公司

对于尽可能多的windows版本,这是我需要知道的操作系统名称 因为我想创建一个脚本,在所有windows版本上执行审计功能,我使用的一些命令是特定于版本的

除非有比使用systeminfo更好的方法来解析windows版本

我不想使用wmi或.net,我正试图让事情尽可能简单一些

谢谢收听

干杯


DD

您可能能够从注册表中获得所需的信息,可以通过“reg”命令或powershell从命令行访问这些信息。更多讨论:

我认为这是在.bat脚本中测试Windows版本的一种更简单的方法:

@REM -- .bat script code for detecting various windows versions @REM h/t to Paul Cramer and Rob van der Woude @REM http://www.robvanderwoude.com/ver.php (or webcitation.org/6CTMCq12q) @echo on if '%OS%' == '' goto win9x if '%COMSPEC%' == 'C:\COMMAND.COM' goto win9x ver | find "Windows XP" >nul if not errorlevel 1 goto WinXP ver | find "Vista" >nul if not errorlevel 1 goto winVistaOrSvr2008 ver | find "6.0." >nul if not errorlevel 1 goto winVistaOrSvr2008 ver | find "6.1." >nul if not errorlevel 1 goto Win7 ver | find "6.2.9200" >nul if not errorlevel 1 goto Win8orSvr2012 ver | find "6." >nul if not errorlevel 1 goto Win8or7orVista ver | find "Windows 2000" >nul if not errorlevel 1 goto win2K ver | find "Windows 98" >nul if not errorlevel 1 goto win9x ver | find "Windows 95" >nul if not errorlevel 1 goto win9x ver | find "Windows Me" >nul if not errorlevel 1 goto win9x @echo **** Sorry, this script does not support your OS version. This is: @ver @goto xit ... :xit ver | find "6.1.7600" >nul @if not errorlevel 1 echo **** Warning! This computer lacks Win7 SP1 **** ver | find "6.0.6000" >nul @if not errorlevel 1 echo **** Warning! This computer lacks Vista SP1 and SP2 **** ver | find "6.0.6001" >nul @if not errorlevel 1 echo **** Warning! This computer might lack Vista SP2 **** :xit2 @REM--.bat脚本代码,用于检测各种windows版本 @REM h/t给Paul Cramer和Rob van der Woude @REM(或webcitation.org/6CTMCq12q) @呼应 如果“%OS%”==“转到win9x 如果“%COMSPEC%”==“C:\COMMAND.COM”转到win9x 版本|查找“Windows XP”>nul 如果不是错误级别1转到WinXP 版本|查找“Vista”>nul 如果不是错误级别1转到winVistaOrSvr2008 版本|查找“6.0”>nul 如果不是错误级别1转到winVistaOrSvr2008 版本|查找“6.1”>nul 如果不是错误级别1转到Win7 版本|查找“6.2.9200”>nul 如果不是错误级别1转到Win8orSvr2012 ver |查找“6.”nul 如果不是错误级别1,则转到Win8or7orVista 版本|查找“Windows 2000”>nul 如果不是错误级别1转到win2K 版本|查找“Windows 98”>nul 如果不是错误级别1转到win9x 版本|查找“Windows 95”>nul 如果不是错误级别1转到win9x ver |查找“Windows Me”>nul 如果不是错误级别1转到win9x @echo****抱歉,此脚本不支持您的操作系统版本。这是: @弗尔 @转到退出 ... :xit 版本|查找“6.1.7600”>nul @如果不是错误级别1回声****警告!这台计算机缺少Win7 SP1**** 版本|查找“6.0.6000”>nul @如果不是错误级别1回声****警告!这台计算机缺少Vista SP1和SP2**** 版本|查找“6.0.6001”>nul @如果不是错误级别1回声****警告!这台计算机可能缺少Vista SP2**** :xit2 @REM -- .bat script code for detecting various windows versions @REM h/t to Paul Cramer and Rob van der Woude @REM http://www.robvanderwoude.com/ver.php (or webcitation.org/6CTMCq12q) @echo on if '%OS%' == '' goto win9x if '%COMSPEC%' == 'C:\COMMAND.COM' goto win9x ver | find "Windows XP" >nul if not errorlevel 1 goto WinXP ver | find "Vista" >nul if not errorlevel 1 goto winVistaOrSvr2008 ver | find "6.0." >nul if not errorlevel 1 goto winVistaOrSvr2008 ver | find "6.1." >nul if not errorlevel 1 goto Win7 ver | find "6.2.9200" >nul if not errorlevel 1 goto Win8orSvr2012 ver | find "6." >nul if not errorlevel 1 goto Win8or7orVista ver | find "Windows 2000" >nul if not errorlevel 1 goto win2K ver | find "Windows 98" >nul if not errorlevel 1 goto win9x ver | find "Windows 95" >nul if not errorlevel 1 goto win9x ver | find "Windows Me" >nul if not errorlevel 1 goto win9x @echo **** Sorry, this script does not support your OS version. This is: @ver @goto xit ... :xit ver | find "6.1.7600" >nul @if not errorlevel 1 echo **** Warning! This computer lacks Win7 SP1 **** ver | find "6.0.6000" >nul @if not errorlevel 1 echo **** Warning! This computer lacks Vista SP1 and SP2 **** ver | find "6.0.6001" >nul @if not errorlevel 1 echo **** Warning! This computer might lack Vista SP2 **** :xit2