[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[网络连接] bat禁用再启用本地连接/WLAN,只能用devcon吗?能否根据连接名字?

bat禁用再启用本地连接/WLAN,只能用devcon吗?能否根据连接名字?

因为有时本地连接 会是 本地连接 2,或者英文版系统可能是英文名字,无法自适应..

  1. netsh interface set interface "本地连接" disabled
  2. netsh interface set interface "本地连接" enabled
复制代码

TOP

在 网络适配器 没有禁用的状态下, 可以用 wmic nic 查询出其 DeviceID, 有必要可以将结果保存到记录文件
  1. wmic nic where AdapterType="Ethernet 802.3" get NetConnectionID,DeviceID /value
复制代码
楼主要操作的 适配器 都是 Ethernet 802.3 类型

如果要把已禁用的适配器启用, 则要指定 DeviceID 的值(或者从记录文件读取)

比如, 已经查询出 本地连接 对应的 DeviceID 是 12, 那么 启用它:
  1. wmic path win32_networkadapter where DeviceID=12 call enable
复制代码
当所有适配器当前没有被禁用时, 无论其连接名称如何, 先禁用再启用的代码:
  1. @echo off
  2. wmic nic where AdapterType="Ethernet 802.3" get NetConnectionID,DeviceID /value
  3. for /f "tokens=2 delims==" %%a in ('wmic nic where AdapterType^="Ethernet 802.3" get DeviceID /value') do (
  4.     REM 禁用
  5.     wmic path win32_networkadapter where DeviceID=%%a call disable
  6.    
  7.     REM 启用
  8.     wmic path win32_networkadapter where DeviceID=%%a call enable
  9. )
  10. pause
复制代码

TOP

在 网络适配器 没有禁用的状态下, 可以用 wmic nic 查询出其 DeviceID, 有必要可以将结果保存到记录文件楼主 ...
aa77dd@163.com 发表于 2015-10-15 00:35



    好长时间没登录论坛了..感谢分享!!不过我刚刚在Win10试了一下

C:\Users\Administrator>wmic nic where AdapterType="Ethernet 802.3" get NetConnectionID,DeviceID /value
没有可用实例。


我比较好奇的是,为何是802.3??因为经常看到的像WiFi信号,貌似都是802.11 b/g/n 这样的?? 谢谢.

TOP

回复 4# wkl17
IEEE802.3不是无线协议,是快速以太网,是100兆比特每秒以太网的标准

TOP

其实我一直想写一个,能自动识别 本地连接 / 无线网络连接 并对其设置DNS为8.8.8.8的bat.

但没想出用什么办法 获取到网络连接的名字..因为中文系统,英文系统,还有带数字如 WLAN2 的连接,无法自适应..大概得结合wmic ?...

TOP

返回列表