windows快速开关网络接口的脚本
本文最后更新于 61 天前,其中的信息可能已经有所发展或是发生改变。

方案一:输入1关闭以太网 1并打开WLAN,输入2相反

@echo off
chcp 65001 >nul
:: 自动申请管理员权限
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
if '%errorlevel%' NEQ '0' (
echo Requesting admin privileges...
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs" & exit /B
:gotAdmin
:: 主菜单
:menu
cls
echo Network Interface Manager
echo --------------------------
echo 1. 国外 Disable Ethernet 1 and Enable WLAN
echo 2. 国内 Enable Ethernet 1 and Disable WLAN
echo 3. Exit
set /p choice=Enter number (1-3):
if "%choice%"=="1" goto disableEthernetEnableWLAN
if "%choice%"=="2" goto enableEthernetDisableWLAN
if "%choice%"=="3" exit
goto menu
:disableEthernetEnableWLAN
netsh interface set interface name="以太网" admin=disable
netsh interface set interface name="WLAN" admin=enable
echo Ethernet 1 disabled and WLAN enabled!
timeout /t 2 >nul
goto menu
:enableEthernetDisableWLAN
netsh interface set interface name="以太网" admin=enable
netsh interface set interface name="WLAN" admin=disable
echo Ethernet 1 enabled and WLAN disabled!
timeout /t 2 >nul
goto menu

方案二:通过两层命令,控制不同的网络接口

@echo off
chcp 65001 >nul
:: 自动申请管理员权限
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
if '%errorlevel%' NEQ '0' (
echo Requesting admin privileges...
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs" & exit /B
:gotAdmin
:: 主菜单
:menu
cls
echo Network Interface Manager
echo --------------------------
echo 1. 以太网 1
echo 2. 以太网 2
echo 3. WLAN
echo 4. Exit
set /p choice=Enter number (1-4):
if "%choice%"=="1" set interface="以太网" && goto operation
if "%choice%"=="2" set interface="以太网 2" && goto operation
if "%choice%"=="3" set interface="WLAN" && goto operation
if "%choice%"=="4" exit
goto menu
:: 操作菜单
:operation
cls
echo Selected Interface: %interface%
echo --------------------------
echo 1. Disable
echo 2. Enable
echo 3. Back
echo 4. Exit
set /p action=Choose action (1-4):
if "%action%"=="1" (netsh interface set interface %interface% admin=disable && echo %interface% disabled!)
if "%action%"=="2" (netsh interface set interface %interface% admin=enable && echo %interface% enabled!)
if "%action%"=="3" goto menu
if "%choice%"=="4" exit
timeout /t 1 >nul
goto menu

小意外

echo命令中仅作为输出,下面的错误不应该呀!

打开执行追踪,逐步分析。发现执行时,其中的一个echo被吞了???!!

思考原因

  • 因存在中文字符,文本格式有问题?UTF-8格式,没毛病呀!
  • echo语法不对?这也不是呀!
  • 代码其他部分的干扰?其他地方没事呀!
  • ????

最后发现,这一行中汉字个数为偶数时(或是汉字后面随意加上可见两个字符),运行正常!啊!!!(无奈,鄙人不才,不跟你在这耗,走了走了)

其实,我的硬件就叫“以太网”,由于上面的原因,便修改成“以太网 1”。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇