如何用bat命令实现启用&禁用以太网

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用bat命令实现启用&禁用以太网相关的知识,希望对你有一定的参考价值。

比如:以太网现在是启用状态 打开后以太网就会禁用
处于禁用状态 打开后就会启用

用一个bat文件实现双击启用双击禁用

@echo off & title 一键 禁/启 以太网 By 依梦琴瑶

::设置以太网(本地连接)名称
set ConName=本地连接

netsh interface show interface "%ConName%" | findstr "已禁用" >nul 2>nul && (
    set State=enabled
    set Msg=%ConName%已启用
) || (
    set State=disabled
    set Msg=%ConName%已禁用
)

netsh interface set interface "%ConName%" %State% && echo %Msg%
pause

此命令在已开启“用户帐户控制”的系统上需要右键管理员身份权限运行。

参考技术A @echo off
rem 如下示例是在Win10上测试的,在Win7等系统中,示例中“以太网”和“WLAN”要做相应替换。

rem 获取管理员权限
>NUL 2>&1 REG.exe query "HKU\\S-1-5-19" || (
    ECHO SET UAC = CreateObject^("Shell.Application"^) > "%TEMP%\\Getadmin.vbs"
    ECHO UAC.ShellExecute "%~f0", "%1", "", "runas", 1 >> "%TEMP%\\Getadmin.vbs"
    "%TEMP%\\Getadmin.vbs"
    DEL /f /q "%TEMP%\\Getadmin.vbs" 2>NUL
    Exit /b
)

rem 切换支持中文,注:以ANSI【GB2312 (Simplified)】编码保存后不再chcp切换。
rem chcp 65001

title 切换网络连接状态

rem 初始化网卡状态变量
set WiredConn=0
set WiredlessConn=0

rem 判断网卡状态
netsh interface show interface "以太网" | findstr "已禁用" >nul 2>nul && set WiredConn=0 || set WiredConn=1
netsh interface show interface "WLAN" | findstr "已禁用" >nul 2>nul && set WirelessConn=0 || set WirelessConn=1

rem 显示网卡状态
if %WiredConn% EQU 1 (echo 当前有线状态:启用) else (echo 当前有线状态:禁用)
echo.
if %WirelessConn% EQU 1 (echo 当前无线状态:启用) else (echo 当前无线状态:禁用)

rem 切换网卡连接状态
if %WiredConn% EQU %WirelessConn% ((netsh interface set interface "以太网" enabled >nul 2>nul && echo. & echo 成功启用有线) & (netsh interface set interface "WLAN" disabled > nul 2>nul && echo. & echo 成功禁用无线) & (goto endit))
if %WiredConn% EQU 1 (
    if %WirelessConn% EQU 0 (
  (netsh interface set interface "以太网" disabled >nul 2>nul && echo. & echo 成功禁用有线) & (netsh interface set interface "WLAN" enabled >nul 2>nul && echo. & echo 成功启用无线) & ((timeout /t 3 /nobreak >nul 2>nul) & (netsh wlan connect name=thl168-ICCT ssid=thl168-ICCT interface="WLAN" >nul 2>nul) & (echo 且已发送连接thl168-ICCT无线热点的请求。) & (goto endit))
)
 ) else (
(netsh interface set interface "以太网" enabled >nul 2>nul && echo. & echo 成功启用有线) & (netsh interface set interface "WLAN" disabled >nul 2>nul && echo. & echo 成功禁用无线) & (goto endit)
 )

:endit
echo.
echo 3秒内自动关闭。
timeout /t 3 /nobreak
exit

如何用bat文件定期卸载软件?

我想用bat文件或类似方法在规定的日期自动卸载己经安装后正常使用的软件。比如,想在2012年11月4日自动卸载搜狗输入法,请问怎样编写呢?
如果bat文件不能解决,请问还可以用别的什么方法呢?要求方法简单,隐避。

想隐蔽卸载的话得看你要卸载的软件是否支持静默卸载。
大部分软件卸载都需要交互,无法隐蔽卸载,即使静默卸载,也需要加特定参数。

或者可以这样
1、杀掉进程
2、删除安装文件夹
3、清理相关注册表项
参考技术A 批处理可能无法做到。需要设置一个计划任务,在指定的时间运行搜狗的反安装程序

以上是关于如何用bat命令实现启用&禁用以太网的主要内容,如果未能解决你的问题,请参考以下文章

如何用bat文件执行cmd命令?

bat 执行回车

如何用bat在另一个cmd里输入指令并执行?

如何用bat调用bandizip加密压缩当前目录的所有文件夹?

如何用批处理bat找出XML某个节点的值

如何用BAT命令批量移动文件到文件夹?