|
yangzhiyi
中级用户
积分 261
发帖 123
注册 2006-6-6
状态 离线
|
『楼 主』:
如何判断系统的版本和求所有版本的ipconfig命令
@echo off
for /F "tokens=3 delims= " %%i in ('ver') do (
if /i %%i==2000 set ipconfig=ipconfig_%%i.exe & goto start
if /i %%i==XP set ipconfig=ipconfig_%%i.exe & goto start
if /i %%i==2003 set ipconfig=ipconfig_%%i.exe & goto start
if /i %%i==Vista set ipconfig=ipconfig_%%i.exe & goto start
goto nover
)
:start
echo %ipconfig%
::%ipconfig% /all >ip.ini
goto end
:nover
echo 未知系统版本
goto end
:end
pause
我这样写的,还有更简单的方法吗?
你们谁有windwos 2003和Vista的系统,上传一个ipconfig.exe命令给我,顺便帮我试试这批是不是执行正常,感谢了!
我实际上是想ipconfig/all命令生成INI格式的文件,想了很久都不知怎么做,所以就修改ipconfig命令来生成。但是每个操作系统的ipconfig命令不通用的。
|
|
2008-7-26 14:15 |
|
|
HAT
版主
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
2 楼』:
Quote: | Microsoft Windows [Version 5.2.3790]
(C) Copyright 1985-2003 Microsoft Corp.
C:\>ver
Microsoft Windows [Version 5.2.3790] |
|
Win2003 EE
|
|
|
2008-7-26 14:31 |
|
|
yangzhiyi
中级用户
积分 261
发帖 123
注册 2006-6-6
状态 离线
|
『第
3 楼』:
晕, 这样我那批在2003就不能正常运行了,
帮我试试2003有没有 getmac 命令,麻烦上传一个ipconfig.exe命令给我,麻烦你了
[ Last edited by yangzhiyi on 2008-7-26 at 02:46 PM ]
|
|
2008-7-26 14:41 |
|
|
yangzhiyi
中级用户
积分 261
发帖 123
注册 2006-6-6
状态 离线
|
『第
4 楼』:
5.0* 是win2000
5.1* 是winXP
5.2* 是win2003
5.3* 是win Vista ?
|
|
2008-7-26 14:44 |
|
|
HAT
版主
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
5 楼』:
经测试,Win2003有getmac命令,ipconfig.exe无法在XP直接运行,需要dll文件的支持。
|
|
|
2008-7-26 14:44 |
|
|
yangzhiyi
中级用户
积分 261
发帖 123
注册 2006-6-6
状态 离线
|
『第
6 楼』:
是啊,所以我才要每个系统版本的ipconfig命令啊
再帮我试试 getmac /v /fo csv /nh 结果是不是跟这差不多
"本地连接","Realtek RTL8139/810x Family Fast Ethernet NIC","00-0E-A6-CF-**-**","\Device\Tcpip_{7FC85BA4-3190-49BC-9CBA-B5AFFDCF339E}"
"本地连接 3","VNN VNC Adapter","06-00-9B-A0-06-00","媒体被断开"
即:"连接名","网卡","物理地址:,"传输名称"
[ Last edited by yangzhiyi on 2008-7-26 at 02:51 PM ]
|
|
2008-7-26 14:47 |
|
|
HAT
版主
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
7 楼』:
net config work Return Values
Value Operating System
NT40 Microsoft Windows NT 4.0
2000 Microsoft Windows 2000
2002 Microsoft Windows XP
2003 Microsoft Windows 2003
|
|
|
2008-7-26 14:48 |
|
|
HAT
版主
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
|
2008-7-26 14:51 |
|
|
HAT
版主
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
9 楼』:
Quote: | 再帮我试试 getmac /v /fo csv /nh 结果是不是跟这差不多
"本地连接","Realtek RTL8139/810x Family Fast Ethernet NIC","00-0E-A6-CF-**-**","\Device\Tcpip_{7FC85BA4-3190-49BC-9CBA-B5AFFDCF339E}"
"本地连接 3","VNN VNC Adapter","06-00-9B-A0-06-00","媒体被断开"
即:"连接名","网卡","物理地址:,"传输名称" |
|
是的,很类似,不过我这里是英文版的,呵呵。
|
|
|
2008-7-26 14:56 |
|
|
yangzhiyi
中级用户
积分 261
发帖 123
注册 2006-6-6
状态 离线
|
|
2008-7-26 14:58 |
|
|
yangzhiyi
中级用户
积分 261
发帖 123
注册 2006-6-6
状态 离线
|
『第
11 楼』:
改成这样不知行不行,vista 的版本号可能是 6.0.***
@echo off
ver | find "5.0" >nul && goto 2000
ver | find "5.1" >nul && goto xp
ver | find "5.2" >nul && goto 2003
ver | find "6.0" >nul && goto vista
goto nover
:2000
echo 2000
goto end
:xp
echo xp
goto end
:2003
echo 2003
goto end
:Vista
echo Vista
goto end
:nover
echo 未知系统版本
goto end
:end
pause
或者这样
@echo off
ver | find "5.0" >nul && (set ipconfig=ipconfig_2000.exe & goto start)
ver | find "5.1" >nul && (set ipconfig=ipconfig_xp.exe & goto start)
ver | find "5.2" >nul && (set ipconfig=ipconfig_2003.exe & goto start)
ver | find "6.0" >nul && (set ipconfig=ipconfig_vista.exe & goto start)
goto nover
:start
echo %ipconfig%
::%ipconfig% /all >ip.ini
goto end
:nover
echo 未知系统版本
goto end
:end
pause
[ Last edited by yangzhiyi on 2008-7-26 at 04:02 PM ]
|
|
2008-7-26 15:27 |
|
|
yangzhiyi
中级用户
积分 261
发帖 123
注册 2006-6-6
状态 离线
|
『第
12 楼』:
求Vista 系统的ipconfig.exe 命令
|
|
2008-7-27 22:35 |
|
|
pusofalse
银牌会员
积分 1604
发帖 646
注册 2008-4-13
状态 离线
|
『第
13 楼』:
for /f "tokens=3" %%a in ('ver') do set ipconfig=ipconfig_%%a.exe&goto start
goto nover
:start
echo %ipconfig%
::%ipconfig% /all >ip.ini
goto end
:nover
echo 未知系统版本
:end
pause
|
心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^ |
|
2008-7-28 01:53 |
|
|
yangzhiyi
中级用户
积分 261
发帖 123
注册 2006-6-6
状态 离线
|
『第
14 楼』:
Quote: | Originally posted by pusofalse at 2008-7-28 01:53:
[code]for /f "tokens=3" %%a in ('ver') do set ipconfig=ipconfig_%%a.exe&goto start
goto nover
:start
echo %ipconfig%
::%ipconfig% /all >ip.ini
goto end
:nover
echo 未知系 ... |
|
2003版的ver Microsoft Windows [Version 5.2.3790] 没有2003字样,所以没用,我也只要那几个版本就行了,不过也从它学到了简单的得到是什么版本的系统方法了,每个系统版本应该都有[* *.*.***]的,我记得98的是4呢。就找.就行。
哎,今天找到的vista系统的ipconfig.exe了,打开看了一下,它没有信息表的了,所以没法改,这方法又没有用了。
|
|
2008-7-28 18:58 |
|
|
dosyenanjs
初级用户
积分 22
发帖 11
注册 2008-7-10
状态 离线
|
『第
15 楼』:
@echo off&setlocal enabledelayedexpansion
reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v CurrentVersion>%temp%\ver.txt
for /f "delims=" %%i in (%temp%\ver.txt) do (set/a n+=1&echo %%i>%temp%\!n!.txt)
for /f "tokens=3" %%i in (%temp%\!n!.txt) do (
if %%i equ 6.0 echo Your system is vista
)
|
|
2008-7-28 19:58 |
|