从命令行启用/禁用网络连接

Posted

技术标签:

【中文标题】从命令行启用/禁用网络连接【英文标题】:Enable/disable network connection from command line 【发布时间】:2013-11-18 19:23:45 【问题描述】:

我知道在 Google 中有很多结果:results,但我没有在我的 Windows XP 机器上找到它。我想从命令行禁用 LAN 连接。

>netsh interface set interface "Local Area Connection" DISABLED
One or more essential parameters not specified
The syntax supplied for this command is not valid. Check help for the correct sy
ntax.

>netsh interface set interface name="Local Area Connection" admin="disabled"
One or more essential parameters not specified
The syntax supplied for this command is not valid. Check help for the correct sy
ntax.

>netsh interface set interface name="Local Area Connection" admin=DISABLED
One or more essential parameters not specified
The syntax supplied for this command is not valid. Check help for the correct sy
ntax.

【问题讨论】:

首先让我问你为什么要这样做?第二,如果您尝试禁用 LAN,为什么不在控制面板中设置它 因为两个 LAN 不能一起工作。因此,如果他们有的话,我需要一个可行的。我不想手动禁用它我需要使用 bat 文件自动禁用它。 好的,我知道你要去哪里,让我看看一些东西,然后告诉你。 我也有同样的问题。你找到解决办法了吗? @Arya,查看我的回答below,希望对您有所帮助。 【参考方案1】:

好的,您似乎需要从表中删除配置文件。 IE。

netsh LAN>删除“局域网连接配置文件”

在此之前,您应该保存 LAN 的配置信息,以防您想将其添加回来,它将保存为 XML 文件,然后将其添加回来就可以了

netsh LAN>ADD file-name="profile1.XML" interface="本地连接"

还可以查看http://www.computerhope.com/netsh.htm 了解有关 netsh 命令的更多详细信息

希望对你有帮助

【讨论】:

【参考方案2】:

对于前两个命令,您需要提升/管理员权限:

禁用 LAN 网络连接

C:\> netsh interface set interface name="Local Area Connection" admin=disabled

启用 LAN 网络连接

C:\> netsh interface set interface name="Local Area Connection" admin=enabled

假设:您的接口被命名为“本地连接”,否则替换为专有名称。使用netsh interface show interface 查找名称。

列出 Wifi 配置文件

C:\> netsh wlan show profiles

连接到 Wifi 配置文件

C:\> netsh wlan connect name="ProfileName"

【讨论】:

在没有提升/管理员权限的情况下运行时,第一个命令失败,声称“具有此名称的接口未向路由器注册。”。 有没有办法在没有管理员权限的情况下实现这一点?【参考方案3】:

您必须以提升/管理员权限运行它。

(在 Windows 7 上,否则我会收到令人困惑的错误消息

An interface with this name is not registered with the router.

)

(我编辑了@yarish kumar 的答案以反映这一点。)

【讨论】:

【参考方案4】:

C:\WINDOWS\system32>netsh 界面显示界面

管理状态状态类型接口名称

已启用连接的专用以太网 2 启用断开连接的专用以太网 启用连接专用 Wi-Fi

C:\WINDOWS\system32>netsh interface set interface name="Ethernet" admin=enable or disable

w10 输出这个..

【讨论】:

【参考方案5】:

    以管理员身份启动命令提示符。

    要显示包含“接口名称”、“状态”等的列表,请输入以下内容:

    netsh 界面显示界面

它会回显应该像这样的东西。

> netsh interface show interface

Admin State    State          Type             Interface Name
-------------------------------------------------------------------------
Enabled        Connected      Dedicated        Local Area Connection
Disabled       Disconnected   Dedicated        Local Area Connection 4
    现在,从您的列表中选择一个“接口名称”。 例如,如您所见,我的是“本地连接”

启用选择的连接类型如下:

“%InterfaceName%”在哪里放置您的接口名称。 注意:如果包含空格,请用双引号 ["] 关闭“接口名称”,例如:“本地连接”。

netsh interface set interface "%InterfaceName%" ENABLE

或者,如果不适合您,请尝试下一个:

netsh interface set interface name="%InterfaceName%" admin=ENABLED

禁用选择的连接类型如下:

 netsh interface set interface "%InterfaceName%" DISABLE

或者,如果不适合您,请尝试下一个:

netsh interface set interface name="%InterfaceName%" admin=DISABLED

提示:您只需双击即可创建“Restart Connection.cmd”或“Restart Connection.bat”来完成这项工作。 ;) 这可能是这样的:

@echo off
mode con: cols=80 lines=27
title Connection Restart
color 1f
cls
echo  This program restarts Internet Connection adapter.
echo.
echo  List of network adapters (Internet adapters)
netsh interface show interface
echo ==========================================================================

:: Setting Interface Name
set InterfaceName=Local Area Connection

:Disadling adapter
echo. & echo
echo  RESTARTING "%InterfaceName%" adapter. WAIT...
netsh interface set interface "%InterfaceName%" disable
echo "%InterfaceName%" adapter disabled. Wait...
echo. & echo.==========
timeout /t 5 >nul

:Enabling adapter
netsh interface set interface "%InterfaceName%" enable
echo "%InterfaceName%" adapter Enabled. Wait...
echo. & echo.==========
echo  Procedure completed successfully

timeout /t 6 >nul
EXIT

注意,您需要在此批次中替换以使其适合您的唯一内容是您的 'Interface Name' 在 13 号的(确切)名称行。

例如,粗体字的名称: 设置 InterfaceName=本地连接

这一行(第 13 行)使该变量为“%InterfaceName%”,因此您无需更改任何其他内容即可工作。但如果你愿意,你可以尝试一下。

享受

【讨论】:

以上是关于从命令行启用/禁用网络连接的主要内容,如果未能解决你的问题,请参考以下文章

以编程方式禁用/启用网络接口

请问可以用批处理禁用和启用网络连接吗?

如何判断“移动网络数据”是启用还是禁用(即使通过 WiFi 连接)?

批处理如何禁用本地连接同时启用无线连接

使用devcon禁用启用网卡

如何从 Windows 应用程序检测禁用的网络接口连接?