Board logo

标题: [文件操作] [已解決]批处理for命令如何取得Windows各不同的版本号码? [打印本页]

作者: dennisle    时间: 2010-10-14 11:24     标题: [已解決]批处理for命令如何取得Windows各不同的版本号码?

請教論壇上的前輩
如何以 FOR 取得 Windows 各不同的版本號碼,謝謝!
for /f "tokens=* delims=[] " %%i in ('ver') do set Ver=%%i
例:
    WINXP=5.1.2600
    WIN2K3=5.2.3790
    WIN7=6.1.7600

[ 本帖最后由 dennisle 于 2010-10-15 07:50 编辑 ]
作者: leap    时间: 2010-10-14 11:55

改了试试
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=2 delims=[版本" %%i in ('ver') do (set a=%%i&set b=!a:]=!&set c=!b: =!)
  3. if "%a:~1,3%" equ "5.1" echo WINXP=%c%
  4. if "%a:~1,3%" equ "5.2" echo WIN2003=%c%
  5. if "%a:~1,3%" equ "6.1" echo WIN7=%c%
  6. pause>nul
复制代码
  1. for /f "tokens=3,5 delims= " %%i in ('ver') do (set a=%%i&set b=%%j)
  2. echo WIN%a%=%b:~0,8%
  3. echo WIN%a%=%b:]=%
  4. pause
复制代码
  1. for /f "tokens=2,3,5 delims= " %%i in ('ver') do (set c=%%i&set a=%%j&set b=%%k)
  2. echo %c%%a%=%b:]=%
  3. pause
复制代码
最后修改
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=2 delims=[版本" %%i in ('ver') do (set a=%%i&set b=!a:]=!&set c=!b: =!)
  3. if "%a:~1,5%" equ "5.00." echo WIN2000=%c%
  4. if "%a:~1,8%" equ "6.0.6000" echo WINVista=%c%
  5. if "%a:~1,8%" equ "6.0.6001" echo WIN2008=%c%
  6. if "%a:~1,5%" equ "5.1.2" echo WINXP=%c%
  7. if "%a:~1,5%" equ "5.2.3" echo WIN2003=%c%
  8. if "%a:~1,5%" equ "6.1.6" echo WIN7=%c%
  9. pause>nul
复制代码

作者: dennisle    时间: 2010-10-14 13:33     标题: 回复 2楼 的帖子

感謝您的回覆:
以您回覆的代碼在 WinXP 可行
C:\ver
Microsoft Windows XP [版本 5.1.2600]
如果是在 Win2003 環境不行耶!!
c:\ver
Microsoft Windows [版本 5.2.3790]

兩個環境 VER 的組合不同結果也會不同
請教您該如何以一句 FOR 適用在2個不同環境
謝謝您!!
作者: leap    时间: 2010-10-14 14:32

原帖由 dennisle 于 2010-10-14 13:33 发表
感謝您的回覆:
以您回覆的代碼在 WinXP 可行
C:\ver
Microsoft Windows XP [版本 5.1.2600]
如果是在 Win2003 環境不行耶!!
c:\ver
Microsoft Windows [版本 5.2.3790]

兩個環境 VER 的組合不同結果也會不同 ...

你可以吧在不同的系统中显示都贴上来吗
改好了 在2楼 看看行不行

[ 本帖最后由 leap 于 2010-10-14 15:10 编辑 ]
作者: dennisle    时间: 2010-10-14 16:54     标题: 回复 4楼 的帖子

感謝您的回覆:
小弟將執行 VER 都貼上吧,請您參考
Win2000
Microsoft Windows 2000 [版本 5.00.2195]
WinXP
Microsoft Windows XP [版本 5.1.2600]
Win2003
Microsoft Windows [版本 5.2.3790]
WinVista
Microsoft Windows [版本 6.0.6000]
Win2008
Microsoft Windows [版本 6.0.6001]
Win7
Microsoft Windows [版本 6.1.6700]
作者: bluewing009    时间: 2010-10-14 19:37

可以自己去注册表划拉一下,那边的值更明确
作者: changzhi    时间: 2010-10-14 20:55

给个简单的
  1. wmic os get Version,Description|findstr /i /v "version"
复制代码

[ 本帖最后由 changzhi 于 2010-11-26 14:06 编辑 ]
作者: dennisle    时间: 2010-10-15 07:48

非常感謝樓上幾位回覆的大哥




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2