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

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

现在的问题是:如何获得在用的网卡名称?
...全文
977 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
SueMagic 2019-04-04
用cmd等命令来修改,而不是简单的手动鼠标点击
回复
SueMagic 2019-04-04
那是要怎么修改网卡名称呢?
回复
xyl9527 2018-07-12
:
@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 命令就可以获得所有链接的状态,包括是否连接了的。捕获这个命令的输出来解析吧。
回复
相关推荐
发帖
windows网络管理与配置
创建于2007-08-02

6070

社区成员

windows网络管理与配置
申请成为版主
帖子事件
创建了帖子
2015-08-31 03:11
社区公告
暂无公告