本文目录导读:

下面为您编写一个定时切换电源方案的批处理脚本(Windows 系统),该脚本支持两种模式:
- 单次定时切换(30 分钟后切换到“节能”模式)
- 循环定时切换(例如每 2 小时在“平衡”和“高性能”之间来回切换)
单次定时切换电源方案(例:30 分钟后切换到“节能”)
@echo off chcp 65001 >nul定时切换电源方案 :: 设置要切换到的电源方案 GUID(这里以“节能”为例:a1841308-3541-4fab-bc81-f71556f20b4a) set "GUID=a1841308-3541-4fab-bc81-f71556f20b4a" set "WAIT_MINUTES=30" echo 将在 %WAIT_MINUTES% 分钟后切换到“节能”电源方案。 echo 按任意键取消... timeout /t 5 /nobreak >nul :: 等待指定分钟数(1分钟 = 60秒) timeout /t %WAIT_MINUTES%*60 /nobreak >nul :: 执行切换 powercfg /setactive %GUID% echo 已切换至“节能”电源方案。 pause
循环定时切换电源方案(每 N 分钟在“平衡”与“高性能”之间切换)
@echo off
chcp 65001 >nul循环电源方案切换器
:: 定义两个方案的 GUID
:: 平衡: 381b4222-f694-41f0-9685-ff5bb260df2f
:: 高性能: 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c
set "BALANCED=381b4222-f694-41f0-9685-ff5bb260df2f"
set "HIGH_PERF=8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c"
:: 切换间隔(分钟)
set "INTERVAL=60"
echo 每 %INTERVAL% 分钟切换一次电源方案(平衡 ↔ 高性能)
echo 按 Ctrl+C 停止运行。
echo.
:loop
:: 获取当前活跃方案
for /f "tokens=2 delims=: " %%a in ('powercfg /getactivescheme ^| findstr /i "GUID"') do set "CURRENT=%%a"
if "%CURRENT%"=="%BALANCED%" (
powercfg /setactive %HIGH_PERF%
echo [%date% %time%] 切换到 高性能
) else (
powercfg /setactive %BALANCED%
echo [%date% %time%] 切换到 平衡
)
timeout /t %INTERVAL%*60 /nobreak >nul
goto loop
如何获取电源方案 GUID
在 管理员命令提示符 下运行:
powercfg /list
得到类似输出:
现有电源使用方案 (* 表示活动)
-----------------------------------
电源方案 GUID: 381b4222-f694-41f0-9685-ff5bb260df2f (平衡)
电源方案 GUID: 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c (高性能)
电源方案 GUID: a1841308-3541-4fab-bc81-f71556f20b4a (节能)
把对应的 GUID 复制替换到脚本中的变量即可。
使用说明
| 操作 | 说明 |
|---|---|
| 运行脚本 | 双击 .bat 或以管理员身份运行(推荐) |
| 停止循环 | Ctrl+C 并输入 Y 确认 |
| 修改方案 | 替换脚本开头的 GUID 变量值 |
| 修改间隔 | 修改 INTERVAL(分钟)或 WAIT_MINUTES |
高级:带倒计时显示的版本(可选)
如果你想要在等待期间看到剩余时间,可以用 PowerShell 脚本(更灵活):
# 30分钟后切换到“节能”
$guid = "a1841308-3541-4fab-bc81-f71556f20b4a"
$minutes = 30
$seconds = $minutes * 60
for ($i = $seconds; $i -ge 0; $i--) {
Write-Host "`r剩余 $([math]::Floor($i/60)) 分 $($i % 60) 秒" -NoNewline
Start-Sleep -Seconds 1
}
powercfg /setactive $guid
Write-Host "`n已切换至节能方案"
保存为 .ps1,右键 使用 PowerShell 运行 即可。
如果你需要系统开机自启、定时任务计划(Task Scheduler)整合或多条件切换(如电量低于 20% 自动节能),也可以告诉我,我可以进一步帮你扩展脚本。