命令行批处理如何获得在用的网卡名称?

zhdaring 2015-08-31 03:11:37
近期想做一个自动修改IP地址的批处理软件,但发现由于克隆的原因,现在用的网卡名字都变成了“本地连接 X”的格式(X=1,2,3,4。。。),有的机子装了不只一个网卡,还改成“内网”、“外网”、"生产网“、"办公网”等名字。
因此想将批处理改成:
1、先查找本机正在联接网络的网卡名称,如果超过1张,则显示其名称和IP地址并要求用户选择(超时10秒可默认第一张)
2、自动修改该名字网卡的IP地址

现在的问题是:如何获得在用的网卡名称?
...全文
2335 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
SueMagic 2019-04-04
  • 打赏
  • 举报
回复
用cmd等命令来修改,而不是简单的手动鼠标点击
SueMagic 2019-04-04
  • 打赏
  • 举报
回复
那是要怎么修改网卡名称呢?
xyl9527 2018-07-12
  • 打赏
  • 举报
回复 2
:
@echo off & setlocal enabledelayedexpansion
echo. & echo 正在抓取网卡名称……
set m=0
for /f "tokens=1* delims=," %%a in ('Getmac /v /nh /fo csv') do (
set /a m+=1
set "name!m!=%%a"
set "name=%name:~1,-1%"
)
:Select_Card
echo. & echo 1:!name1! & echo 2:!name2! & echo 3:!name3! & echo 4:!name4! & echo 5:!name5! & echo.
set /p "Select_Card=选择网卡[最多五张]:"
if "%Select_Card%" == "1" ( set card=!name1! ) else (
if "%Select_Card%" == "2" ( set card=!name2! ) else (
if "%Select_Card%" == "3" ( set card=!name3! ) else (
if "%Select_Card%" == "4" ( set card=!name4! ) else (
if "%Select_Card%" == "5" ( set card=!name5! ) else ( echo. & echo 未键入任何参数! & pause>nul & cls & goto :Select_Card )))))
echo. & echo 选择网卡:%card% & goto :eof
空心兜兜 2015-09-01
  • 打赏
  • 举报
回复
ipconfig
赵4老师 2015-09-01
  • 打赏
  • 举报
回复
netsh interface show interface
www_adintr_com 2015-08-31
  • 打赏
  • 举报
回复
直接用 ipconfig 命令就可以获得所有链接的状态,包括是否连接了的。捕获这个命令的输出来解析吧。

6,210

社区成员

发帖
与我相关
我的任务
社区描述
windows网络管理与配置
社区管理员
  • 网络管理与配置社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧