Board logo

标题: [网络连接] 获取IP地址的批处理代码的问题出在哪里? [打印本页]

作者: jzp820927    时间: 2013-7-11 02:21     标题: 获取IP地址的批处理代码的问题出在哪里?

  1. @echo off
  2. for /f "tokens=1 delims=" %%i in ('netsh interface ip show address name="本地连接"^|findstr /c:"IP 地址"') do echo %%i&&pause
复制代码
为什么执行后不显示IP地址呢?代码错在哪儿啊?
作者: apang    时间: 2013-7-11 06:33

等号需要转义,或去掉name=
这样试:
  1. @echo off
  2. for /f "tokens=3" %%i in ('netsh interface ip show address "本地连接"^|find "地址:"') do echo %%i
  3. pause
复制代码

作者: jzp820927    时间: 2013-7-12 01:25

谢谢,问题已经解决了,只是只适用于手动配置的静态IP地址,如果是DHCP获取的,则不显示IP地址。不知道DHCP怎么显示出IP地址。
作者: wskwfkbdn    时间: 2013-7-18 22:25

本帖最后由 wskwfkbdn 于 2013-7-18 22:38 编辑

HI,我到有个简单的思路可以实现静态和动态的ip,网关,网卡地址,外网IP,等网络信息都能有效获取。

时间关系,回头补充代码::

原理:  GREP外部命令,-A 参数可以获取关键的以下N行,
  1. ipconfig/ALL|grep -A 11 "Ethernet adapter 本地连接"
复制代码
  1. ipconfig/ALL|grep -A 11 "Ethernet adapter 本地连接"|find /i "IP Address"
复制代码
Ethernet adapter 本地连接:

        Connection-specific DNS Suffix  . :
        Description . . . . . . . . . . . : Realtek RTL8168/8111 Series PCI-E Gigabit NIC
        Physical Address. . . . . . . . . : 10-BF-48-E0-E0-B6
        Dhcp Enabled. . . . . . . . . . . : No
        IP Address. . . . . . . . . . . . : 192.168.1.63
        Subnet Mask . . . . . . . . . . . : 255.255.252.0
        Default Gateway . . . . . . . . . : 192.168.1.254
        DNS Servers . . . . . . . . . . . : 202.101.172.35
                                                 202.101.172.46





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