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

[网络连接] 多网卡的情况下批处理如何获取指定网卡的ip地址?

[复制链接]
发表于 2014-6-21 19:42:00 | 显示全部楼层 |阅读模式
在单网卡的情况下,获取IP地址的命令是for /f "tokens=15 usebackq" %%i in (`ipconfig/all ^| find /i "IP Address"`) do set ip=%%i

现在有“本地连接”和“本地连接2”两个网卡,分别设置了192.168.1.10和192.168.0.10两个IP地址。如果使用上述命令,获取到的地址第二个网卡的IP。

如何在命令里获取“本地连接”的IP地址??或者直接获取指定名称的网卡的IP地址呢??
发表于 2014-6-21 20:13:33 | 显示全部楼层
发表于 2014-6-22 00:05:27 | 显示全部楼层
本帖最后由 522235677 于 2014-6-22 00:09 编辑
  1. @echo off & setlocal enabledelayedexpansion

  2. for /f "delims=" %%a in ('ipconfig') do (
  3.         set str=%%a
  4.         set str=!str: =!
  5.         if "!str:~-6!"=="本地连接2:" set a=1
  6.         if "!str:~0,9!"=="IPAddress" if "!a!"=="1" (for /f "tokens=2 delims=:" %%b in ("!str!") do echo %%b&goto end)
  7. )
  8. :end
  9. pause

复制代码
 楼主| 发表于 2014-6-22 12:11:06 | 显示全部楼层
三楼命令执行无结果。向二楼学习了
发表于 2014-6-22 13:50:27 | 显示全部楼层
回复 4# chensjiu


   不知道你怎么修改的,我自己测试都可以的
 楼主| 发表于 2014-6-23 13:22:22 | 显示全部楼层
向二楼学习后自行修改了代码,已经成功运行在xp、2003和win2008上。

只获取本地连接的IP。如果本地连接有双IP,则获取本地连接的最后一个IP地址(在本地连接属性里显示为第一个IP)。
@echo off & setlocal enabledelayedexpansion
for /f "tokens=1,2 delims=:" %%a in ('ipconfig') do (
        if "%%a"=="Ethernet adapter 本地连接" set "flag=1"
        if "%%a"=="以太网适配器 本地连接" set "flag=1"
        if "!flag!"=="1" (if "%%a"=="        IP Address. . . . . . . . . . . . " set "ip=%%b")
        if "!flag!"=="1" (if "%%a"=="   IPv4 地址 . . . . . . . . . . . . " set "ip=%%b")
        if "%%a"=="        Default Gateway . . . . . . . . . " set flag=0
        if "%%a"=="   默认网关. . . . . . . . . . . . . " set flag=0       
)
echo IP=%ip%
pause
发表于 2014-6-23 14:56:40 | 显示全部楼层
如果你有win8,及以上,可以用下述powershell命令:
  1. Get-NetAdapter -name 以太网 | Get-NetIPAddress
  2. Get-NetAdapter -name 本地连接 | Get-NetIPAddress
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-21 05:22 , Processed in 0.030237 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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