使用systeminfo获取操作系统名称

我需要find使用batch file运行的Windows的味道,这个batch file可以运行在从Windows NT到Windows 7的任何东西上。我正在使用基于此页面的方法,并做了一些小改动。

Systeminfo给出了正在运行的Windows的味道。 是否有任何可以返回的权威名单? 如果是的话,我会在哪里find这个列表?

我的意图是做这样的事情:

winVer=Unknown rem NT doesn't have systeminfo ver | find "Windows NT" > nul if %errorlevel%==0 set winVer=WinNT if exist %SystemRoot%\system32\systeminfo.exe ( for /f "delims=: tokens=2" %%v in ('sysinfo ^| find "OS Name"') do ( set verStr=%%v ) echo %verStr% | find "Windows XP" > nul if %errorlevel%==0 set winVer=WinXP echo %verStr% | find "Windows Vista" > nul if %errorlevel%==0 set winVer=WinVista ... etc ) 

谢谢

检查此线程: https : //stackoverflow.com/questions/1792740/how-to-tell-what-version-of-windows-and-or-cmd-exe-a-batch-file-is-running-on