Board logo

标题: [文本处理] [已解决]win10系统,批处理通过netsh interface命令,获取网络名? [打印本页]

作者: ygqiang    时间: 2022-11-8 19:56     标题: [已解决]win10系统,批处理通过netsh interface命令,获取网络名?

本帖最后由 ygqiang 于 2022-11-9 07:35 编辑

netsh interface ip show address>a.txt
生成的a.txt文件内容如下,批处理命令如何获取到a.txt里面的关键字:以太网

接口 "以太网" 的配置
    DHCP 已启用:                          是
    IP 地址:                           192.168.11.108
    子网前缀:                        192.168.11.0/24 (掩码 255.255.255.0)
    默认网关:                         192.168.11.1
    网关跃点数:                       0
    InterfaceMetric:                      25

接口 "Loopback Pseudo-Interface 1" 的配置
    DHCP 已启用:                          否
    IP 地址:                           127.0.0.1
    子网前缀:                        127.0.0.0/8 (掩码 255.0.0.0)
    InterfaceMetric:                      75
作者: ygqiang    时间: 2022-11-8 20:07

  1. @echo off
  2. ::用netsh interface命令获取网卡名称。
  3. cls
  4. FOR /F "delims=接口 tokens=2" %%i IN ('netsh interface ip show address') DO set macname=%%i
  5. echo "%macname%"
  6. pause
  7. cls
复制代码
以上命令无效,获取不到关键字
作者: ygqiang    时间: 2022-11-8 20:33

  1. FOR /F tokens^=2^ delims^=^" %%i IN ('netsh interface ip show address') DO set macname=%%i
  2. echo "%macname%"
  3. pause
  4. cls
复制代码
这个显示结果如下:
"Loopback Pseudo-Interface 1"
作者: Batcher    时间: 2022-11-8 22:19

回复 3# ygqiang
  1. @echo off
  2. for /f tokens^=2^ delims^=^" %%i in ('netsh interface ip show address') do (
  3.     set "macname=%%i"
  4.     goto :Next
  5. )
  6. :Next
  7. echo,%macname%
  8. pause
复制代码

作者: ygqiang    时间: 2022-11-9 07:35

回复 4# Batcher


    谢谢。以下命令也可以实现。
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "tokens=1*" %%a in ('ipconfig^|findstr "以太网适配器"') do set "ipname=%%b"
  4. set ipname=%ipname::=%
  5. echo "%ipname%"
  6. pause
复制代码





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