[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[网络工具] 批处理获取多网卡系统中指定网络连接对应的IP地址

  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. pause
复制代码
1

评分人数

我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

这个bat不好写,因为可变性太多了。比如安装了虚拟机 网卡名称改变 或者重复名称 等等 不好判断。

TOP

回复 23# Batcher


    无线网络连接 2和无线网络连接 3是虚拟网卡,不知道从哪出来的,配置了静态IP以后不知道为啥用ipconfig /all还是无法显示IP。现在我遇到的问题对实际使用没有影响,非常感谢您的回复。

TOP

回复 22# zhiweiloli


    配置IP之后得到的ipList.txt发出来
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 21# Batcher


    配置了IP一样不行获取的总是最后一个   IP

TOP

回复 20# zhiweiloli


    你的 ipconfig /all 命令结果里面"无线网络连接 2"没有IP地址,所以获取不到。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 19# Batcher

网卡的名称已经修改过,我有一个无线网卡(无线网络连接)虚拟出两个虚拟无线网卡(无线网络连接 2    无线网络连接 3)有限网卡,VMware虚拟网卡,蓝牙
我要获取无线网卡(无线网络连接)的IP地址是可以的,但是要获取虚拟的无线网卡的IP(无线网络连接 2)也是显示的无线网络连接的IP
应该是和你的for循环有关,搜索了三次但是只输出了一次
下面是我用的批处理和ipList

@echo off
REM 设置网络适配器的名称
REM 英文系统一般是:Local Area Connection
REM set "AdapterName=Local Area Connection"
REM 中文系统一般是:本地连接
set "AdapterName=无线网络连接"

set "FileTmp=%temp%\ipList.txt"
ipconfig /all >"%FileTmp%"
for /f "delims=:" %%i in ('findstr /n /c:"%AdapterName%" "%FileTmp%"') do (
    set "SkipRow=%%i"
    goto oSkip
)

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

:ShowResult
set "IP=%IP: =%"
echo,%AdapterName%:%IP%
pause


-------------------------------------------------------下面是ipList.txt--------------------------------------------------------------------

IPlist文件(已经删除MAC)

Windows IP 配置

   主机名  . . . . . . . . . . . . . :
   主 DNS 后缀 . . . . . . . . . . . :
   节点类型  . . . . . . . . . . . . : 混合
   IP 路由已启用 . . . . . . . . . . : 否
   WINS 代理已启用 . . . . . . . . . : 否

无线局域网适配器 无线网络连接 3:

   媒体状态  . . . . . . . . . . . . : 媒体已断开
   连接特定的 DNS 后缀 . . . . . . . :
   描述. . . . . . . . . . . . . . . : Microsoft Virtual WiFi Miniport Adapter #2
   物理地址. . . . . . . . . . . . . :
   DHCP 已启用 . . . . . . . . . . . : 是
   自动配置已启用. . . . . . . . . . : 是

无线局域网适配器 无线网络连接 2:

   媒体状态  . . . . . . . . . . . . : 媒体已断开
   连接特定的 DNS 后缀 . . . . . . . :
   描述. . . . . . . . . . . . . . . : Microsoft Virtual WiFi Miniport Adapter
   物理地址. . . . . . . . . . . . . :
   DHCP 已启用 . . . . . . . . . . . : 是
   自动配置已启用. . . . . . . . . . : 是

无线局域网适配器 无线网络连接:

   连接特定的 DNS 后缀 . . . . . . . :
   描述. . . . . . . . . . . . . . . : Intel(R) Dual Band Wireless-N 7260
   物理地址. . . . . . . . . . . . . :
   DHCP 已启用 . . . . . . . . . . . : 是
   自动配置已启用. . . . . . . . . . : 是
   本地链接 IPv6 地址. . . . . . . . :
   IPv4 地址 . . . . . . . . . . . . : 111.195.*.*(首选)
   子网掩码  . . . . . . . . . . . . : 255.255.252.0
   获得租约的时间  . . . . . . . . . : 2015年3月16日 16:59:32
   租约过期的时间  . . . . . . . . . : 2015年3月16日 18:02:44
   默认网关. . . . . . . . . . . . . : 111.195.*.*
   DHCP 服务器 . . . . . . . . . . . : 111.195.*.*
   DHCPv6 IAID . . . . . . . . . . . :
   DHCPv6 客户端 DUID  . . . . . . . :
   DNS 服务器  . . . . . . . . . . . : 202.106.*.*
                                       202.106.*.*
   TCPIP 上的 NetBIOS  . . . . . . . : 已启用

以太网适配器 本地连接:

   媒体状态  . . . . . . . . . . . . : 媒体已断开
   连接特定的 DNS 后缀 . . . . . . . :
   描述. . . . . . . . . . . . . . . : Intel(R) Ethernet Connection I218-LM
   物理地址. . . . . . . . . . . . . :
   DHCP 已启用 . . . . . . . . . . . : 是
   自动配置已启用. . . . . . . . . . : 是

以太网适配器 VMware Network Adapter VMnet1:

   连接特定的 DNS 后缀 . . . . . . . :
   描述. . . . . . . . . . . . . . . : VMware Virtual Ethernet Adapter for VMnet1
   物理地址. . . . . . . . . . . . . : 00-50-56-C0-00-01
   DHCP 已启用 . . . . . . . . . . . : 否
   自动配置已启用. . . . . . . . . . : 是
   本地链接 IPv6 地址. . . . . . . . : fe80::bcd7:dd8f:1a86:8dd2%24(首选)
   IPv4 地址 . . . . . . . . . . . . : 192.168.160.1(首选)
   子网掩码  . . . . . . . . . . . . : 255.255.255.0
   默认网关. . . . . . . . . . . . . :
   DHCPv6 IAID . . . . . . . . . . . : 385896534
   DHCPv6 客户端 DUID  . . . . . . . : 00-01-00-01-1C-95-CD-C7-48-51-B7-70-B7-FA
   DNS 服务器  . . . . . . . . . . . : fec0:0:0:ffff::1%1
                                       fec0:0:0:ffff::2%1
                                       fec0:0:0:ffff::3%1
   TCPIP 上的 NetBIOS  . . . . . . . : 已启用

以太网适配器 VMware Network Adapter VMnet8:

   连接特定的 DNS 后缀 . . . . . . . :
   描述. . . . . . . . . . . . . . . : VMware Virtual Ethernet Adapter for VMnet8
   物理地址. . . . . . . . . . . . . : 00-50-56-C0-00-08
   DHCP 已启用 . . . . . . . . . . . : 否
   自动配置已启用. . . . . . . . . . : 是
   本地链接 IPv6 地址. . . . . . . . : fe80::1026:29a4:ae81:b8b9%25(首选)
   IPv4 地址 . . . . . . . . . . . . : 192.168.87.1(首选)
   子网掩码  . . . . . . . . . . . . : 255.255.255.0
   默认网关. . . . . . . . . . . . . :
   DHCPv6 IAID . . . . . . . . . . . : 419450966
   DHCPv6 客户端 DUID  . . . . . . . : 00-01-00-01-1C-95-CD-C7-48-51-B7-70-B7-FA
   DNS 服务器  . . . . . . . . . . . : fec0:0:0:ffff::1%1
                                       fec0:0:0:ffff::2%1
                                       fec0:0:0:ffff::3%1
   TCPIP 上的 NetBIOS  . . . . . . . : 已启用

隧道适配器 isatap.{ED03B2D7-1759-40E0-861B-B98E646081BE}:

   媒体状态  . . . . . . . . . . . . : 媒体已断开
   连接特定的 DNS 后缀 . . . . . . . :
   描述. . . . . . . . . . . . . . . : Microsoft ISATAP Adapter
   物理地址. . . . . . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP 已启用 . . . . . . . . . . . : 否
   自动配置已启用. . . . . . . . . . : 是

隧道适配器 isatap.{67A5A86B-A906-4A28-B34F-DF68C51D586A}:

   媒体状态  . . . . . . . . . . . . : 媒体已断开
   连接特定的 DNS 后缀 . . . . . . . :
   描述. . . . . . . . . . . . . . . : Microsoft ISATAP Adapter #3
   物理地址. . . . . . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP 已启用 . . . . . . . . . . . : 否
   自动配置已启用. . . . . . . . . . : 是

隧道适配器 Teredo Tunneling Pseudo-Interface:

   连接特定的 DNS 后缀 . . . . . . . :
   描述. . . . . . . . . . . . . . . : Teredo Tunneling Pseudo-Interface
   物理地址. . . . . . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP 已启用 . . . . . . . . . . . : 否
   自动配置已启用. . . . . . . . . . : 是
   IPv6 地址 . . . . . . . . . . . . :
   本地链接 IPv6 地址. . . . . . . . :  
   默认网关. . . . . . . . . . . . . :
   TCPIP 上的 NetBIOS  . . . . . . . : 已禁用

隧道适配器 isatap.{C0D3467A-2AE4-4A78-B3D8-ECFA317163C0}:

   媒体状态  . . . . . . . . . . . . : 媒体已断开
   连接特定的 DNS 后缀 . . . . . . . :
   描述. . . . . . . . . . . . . . . : Microsoft ISATAP Adapter #4
   物理地址. . . . . . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP 已启用 . . . . . . . . . . . : 否
   自动配置已启用. . . . . . . . . . : 是

隧道适配器 isatap.{D6364C01-A334-4F37-9BCA-F0A7A7CD991B}:

   媒体状态  . . . . . . . . . . . . : 媒体已断开
   连接特定的 DNS 后缀 . . . . . . . :
   描述. . . . . . . . . . . . . . . : Microsoft ISATAP Adapter #5
   物理地址. . . . . . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP 已启用 . . . . . . . . . . . : 否
   自动配置已启用. . . . . . . . . . : 是

隧道适配器 isatap.{21ADE2CA-A673-47B5-B4E6-14D12FF83E79}:

   媒体状态  . . . . . . . . . . . . : 媒体已断开
   连接特定的 DNS 后缀 . . . . . . . :
   描述. . . . . . . . . . . . . . . : Microsoft ISATAP Adapter #6
   物理地址. . . . . . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP 已启用 . . . . . . . . . . . : 否
   自动配置已启用. . . . . . . . . . : 是

隧道适配器 6TO4 Adapter:

   连接特定的 DNS 后缀 . . . . . . . :
   描述. . . . . . . . . . . . . . . : Microsoft 6to4 Adapter
   物理地址. . . . . . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP 已启用 . . . . . . . . . . . : 否
   自动配置已启用. . . . . . . . . . : 是
   IPv6 地址 . . . . . . . . . . . . :
   默认网关. . . . . . . . . . . . . :
   DNS 服务器  . . . . . . . . . . . :
                                       
   TCPIP 上的 NetBIOS  . . . . . . . : 已禁用

隧道适配器 isatap.{A5F3CB37-A668-4B2C-A4B9-C39E968D5FF5}:

   媒体状态  . . . . . . . . . . . . : 媒体已断开
   连接特定的 DNS 后缀 . . . . . . . :
   描述. . . . . . . . . . . . . . . : Microsoft ISATAP Adapter #7
   物理地址. . . . . . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP 已启用 . . . . . . . . . . . : 否
   自动配置已启用. . . . . . . . . . : 是

TOP

回复 18# zhiweiloli


set "AdapterName=本地连接"
第6行这里修改过了吗?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 1# Batcher


    试用了你的这个代码获取的网卡IP只是ipList这个文件中的最后一个网卡的IP
比如  本地连接(1.1.1.1)       本地连接 2(1.1.1.2)     本地连接 3(1.1.1.3)    这三个网卡配置了不同的IP地址
使用你的脚本获取的三个网卡的地址都是相同的(1.1.1.3),IP都是在ipList.txt这个文件中最后一个出现的IP
有没有办法可以分别获取三个网卡的IP地址

TOP

回复 15# locoman


http://bbs.bathome.net/thread-32428-1-1.html
这个可能更适合你
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

TOP

Batcher,您好,很高兴我们在网上有很好的互动,谢谢您的耐心!敬佩您的水平!

您可以帮助编写出一个完整的BAT源码——
功能:对本机双网卡设置不同的“IP地址、子网掩码、网关地址、DNS地址”
要求:
1、至少能在WINXP和WIN7中能通用。
2、应该先判断机器中究竟实际是插的几张网卡(包括无线网卡)?因为,本机本来实际就可能插的仅有一张网卡,如果仅有一张网卡,就只是针对这一张网卡设置;如果是双网卡,就分别针对网卡1和网卡2设置。
——一般的笔记本机器中可能会“Bluetooth 网络连接、本地连接、无线网络连接”三张网卡,但一般的台式机基本上只会有“两张有线网卡”,当然,也不排除含有无线网卡的。
——不能采用在程序中指定“网卡名称”去操作,因为,用户会修改网卡名称的。

3、设置完成后,应该用一个TXT配置文件保存设置,以便下一次直接读取这个TXT配置文件去完成各自网卡的设置,就再不用手工输入设置了。当然,如果,我手动改变了设置,也应该再次替换保存到TXT配置文件中去的。
4、设置完毕后(包括读取TXT配置文件进行设置),分别对各网卡进行一次“禁用”和“启用”操作。

TOP

回复 13# locoman


这个代码的初衷是要获取多网卡系统中指定网络连接对应的IP地址,你的本地连接对应的网卡没插网线,代码工作非常正常,它就是这样被设计的。
你的理解是正确的,但是这个代码不会向着你说的那个方向去“优化”,你希望实现的功能不是这个代码想要表达的思想。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

我是笔记本,WIN7。机器里面显示有三个网络适配器:Bluetooth 网络连接、本地连接、无线网络连接。
Bluetooth 网络连接,平时没有管它;
本地连接,是固定IP,用于内部OA办公;
无线网络连接,用于公网使用。
————我测试您程序的环境:本地连接没有插上网线,无线网络连接在公网上。
------------
那么,您的批处理是无法获取没有插入网线的网卡(或者说没有连接成功的网卡),这样理解对吗?,如此,还有优化的空间和必要哦。

TOP

回复 11# locoman


你需要把变量AdapterName的值设置为无线网络连接
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表