You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从netsh show interface命令仅提取以太网连接状态?

提取以太网连接状态的批处理实现

可以通过批处理的for /f命令结合字符串筛选,精准提取netsh输出中的连接状态值,以下是两种可靠的实现方式:

方法一:基于关键词筛选(推荐,不受输出行顺序影响)

这种方式通过findstr定位包含"Connect state"的行,再提取冒号后的状态值:

@echo off
for /f "tokens=2* delims=:" %%a in ('netsh interface show interface "Ethernet0" ^| findstr /i "Connect state"') do (
    :: 去除状态值前的空格
    for /f "tokens=*" %%b in ("%%a") do echo %%b
)

命令解释:

  • netsh interface show interface "Ethernet0" ^| findstr /i "Connect state":执行netsh命令并筛选出包含连接状态的行,^|是批处理中管道符的转义写法
  • 第一个for /f以冒号为分隔符,提取冒号后的所有内容(包含前置空格)
  • 第二个for /f "tokens=*"去除内容前的所有空格,得到纯净的状态值(如Disconnected)

方法二:基于行位置提取(依赖固定输出格式)

如果确认netsh的输出行顺序固定(连接状态是第三行),可以直接跳过前两行提取目标值:

@echo off
for /f "skip=2 tokens=4" %%a in ('netsh interface show interface "Ethernet0"') do (
    echo %%a
    goto :eof :: 只取第一行结果,避免后续无关行干扰
)

命令解释:

  • skip=2:跳过输出的前两行(接口名和Type行)
  • tokens=4:以空格为分隔符,提取第四段内容(即连接状态值)
  • goto :eof:提取到结果后立即退出循环,防止读取其他行

内容的提问来源于stack exchange,提问作者Harsh Patel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 03:25:16