找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
楼主: 小智BAT

[网络连接] 【已解决】获取IP地址信息再更改IP地址批处理。

[复制链接]
 楼主| 发表于 2014-10-9 17:30:00 | 显示全部楼层
回复 15# Batcher


    看看这个,是根据你帖子改写的。
  1. @echo off
  2. REM 设置网络适配器的名称
  3. REM 英文系统一般是:Local Area Connection
  4. REM set "AdapterName=Local Area Connection"
  5. REM 中文系统一般是:本地连接
  6. set "AdapterName=本地连接"

  7. set "FileTmp=%temp%\ipList.txt"
  8. ipconfig /all >"%FileTmp%"
  9. for /f "delims=:" %%i in ('findstr /n /c:"%AdapterName%" "%FileTmp%"') do (
  10.     set "SkipRow=%%i"
  11.     goto :DoSkip
  12. )

  13. :DoSkip
  14. for /f "tokens=2 delims=:(" %%i in ('more +%SkipRow% "%FileTmp%" ^| findstr /v "IPv6" ^|findstr "IP"') do (
  15.     set "IP=%%i"
  16.     goto :ShowResult
  17. )

  18. :ShowResult
  19. set "IP=%IP: =%"
  20. echo,%IP%
  21. for /f "tokens=2 delims=:(" %%i in ('more +%SkipRow% "%FileTmp%" ^| findstr /v "IPv6" ^|findstr "子网掩码"') do (
  22.     set "sm=%%i"
  23.     goto :Showsm
  24. )

  25. :Showsm
  26. set "sm=%sm: =%"
  27. echo,%sm%
  28. for /f "tokens=2 delims=:(" %%i in ('more +%SkipRow% "%FileTmp%" ^| findstr /v "IPv6" ^|findstr "默认网关"') do (
  29.     set "wg=%%i"
  30.     goto :Showwg
  31. )

  32. :Showwg
  33. set "wg=%wg: =%"
  34. echo,%wg%
  35. pause
复制代码
 楼主| 发表于 2014-10-9 19:52:52 | 显示全部楼层
回复 15# Batcher


    我已经更新代码了,你看看这样行不?
发表于 2014-10-9 19:54:35 | 显示全部楼层
回复 17# 小智BAT


    你自己多找一些不同的机器测试吧
发表于 2014-10-9 19:59:03 | 显示全部楼层
本帖最后由 apang 于 2014-10-9 20:00 编辑

wmic
  1. @echo off
  2. set "w1=wmic nic where "NetConnectionID='无线网络连接'" get Index"
  3. for /f %%a in ('%w1% ^| findstr /b [0-9]') do set "n=%%a"
  4. set "w2=wmic nicconfig where "Index='%n%'" get DefaultIPGateway^,IPAddress^,IPSubnet"
  5. for /f tokens^=1-2delims^={^" %%a in ('%w2% /value^|find "."')do set "%%a%%b"
  6. echo,%IPAddress%
  7. echo,%IPSubnet%
  8. echo,%DefaultIPGateway%
  9. pause
复制代码
发表于 2014-10-9 20:04:04 | 显示全部楼层
本帖最后由 apang 于 2014-10-10 11:00 编辑

注册表:
xp下,reg query 的 /s 和 /v 开关好像不能一起使用,改一下:
  1. @echo off & setlocal enabledelayedexpansion
  2. set "v1=HKLM\SYSTEM\CurrentControlSet\Control\Network"
  3. set "v2=HKLM\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\Interfaces"
  4. set "s=EnableDHCP IPAddress SubnetMask DefaultGateway"

  5. for /f "delims=" %%i in ('reg query "%v1%" /s') do (
  6.         set "v=%%i"
  7.         if /i "!v:~,4!" == "HKEY" (
  8.                 for %%a in ("!v!\..") do set "ID=%%~nxa"
  9.         ) else for /f "tokens=1,2*" %%a in ("!v!") do (
  10.                 if /i "%%a" == "Name" if "%%c" == "本地连接" goto :Next
  11.         )
  12. )

  13. :Next
  14. for /f "tokens=1,2*" %%i in ('reg query "%v2%\%ID%"^|findstr /i "%s%"')do (
  15.         set "v=%%k" & set "%%i=!v:\0=!"
  16. )

  17. if /i "%EnableDHCP%" == "0x1" (
  18.         echo,IP 地 址:%DHCPIPAddress%
  19.         echo,子网掩码:%DHCPSubnetMask%
  20.         echo,默认网关:%DHCPDefaultGateway%
  21. ) else (
  22.         echo,IP 地 址:%IPAddress%
  23.         echo,子网掩码:%SubnetMask%
  24.         echo,默认网关:%DefaultGateway%
  25. )
  26. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
小智BAT + 1 很好很强大、

查看全部评分

发表于 2014-10-9 20:44:33 | 显示全部楼层
回复 7# 小智BAT

这个仅显示 没测试多网卡 设置的话 WMIC应该也可以哦

  1. @echo off&setlocal enabledelayedexpansion
  2. set "str=DefaultIPGateway^,IPAddress^,DNSServerSearchOrder^,IPSubnet^,DHCPEnabled"
  3. for /f "skip=1tokens=1*" %%i in ('wmic Nic where "Manufacturer<>'Microsoft' and NetConnectionStatus='2'" get Index^,NetConnectionID^') do (
  4.     for /f %%j in ("%%j") do (
  5.         echo 当前连接:%%j
  6.         for /f "tokens=1,2 delims={}," %%a in ('wmic Nicconfig where "Index='%%i'" get %str% /value') do (
  7.             for /f %%c in ("%%a%%~b") do set %%c
  8.         )
  9.     if /i "!DHCPEnabled!" == "TRUE" (
  10.        echo 当前获取IP模式:自动
  11.     ) else echo 当前获取IP模式:手动
  12.       echo 默认网关: !DefaultIPGateway!
  13.       echo ip地址: !IPAddress!
  14.       echo 主DNS: !DNSServerSearchOrder!
  15.       echo 子网掩码: !IPSubnet!
  16.     )
  17. )
  18. pause
复制代码
当然也可以获取 SettingID 后再在注册表里直接获取或修改

评分

参与人数 1技术 +1 收起 理由
小智BAT + 1 乐于助人

查看全部评分

 楼主| 发表于 2014-10-9 20:54:16 | 显示全部楼层
回复 19# apang


    很好很强大,话说wmic改IP怎么修改的,能不能给个栗子??
发表于 2014-10-9 22:31:29 | 显示全部楼层
回复 22# 小智BAT
  1. wmic nicconfig where(index='8') call enablestatic "192.168.1.81","255.255.255.0"
复制代码
http://bbs.bathome.net/thread-4068-1-1.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 23:14 , Processed in 0.029762 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表