使用powercfg复制和编辑电源设置

时间:2013-02-26 15:48:38

标签: batch-file console powercfg

我想使用Windows中的powercfg工具复制我当前的电源方案,然后使用批处理文件更改新方案(如果我搞砸了某些内容,我可以恢复原来的方案)。

我知道powercfg -getactivescheme将返回当前方案的GUID

powercfg -setactive [GUID]会为当前方案设置GUID,但我怎么知道要使用哪个GUID?也就是说,我怎么知道重复方案的新GUID是什么?

1 个答案:

答案 0 :(得分:1)

在我的机器上执行powercfg -l会返回以下内容:

Existing Power Schemes (* Active)
-----------------------------------
Power Scheme GUID: 381b4222-f694-41f0-9685-ff5bb260df2e  (Balanced)
Power Scheme GUID: 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c  (High performance) *
Power Scheme GUID: a1841308-3541-4fab-bc81-f71556f20b4a  (Power saver)

然后,当您使用powercfg -duplicatescheme 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c复制当前活动方案时,输出如下:

Power Scheme GUID: d0b7e1f3-c9ed-49d1-93d4-6ed688244dea  (High performance)

在我看来,从tokens=4命令中捕获powercfg -duplicatescheme可以获得备份方案的GUID。

@echo off
setlocal
rem get current scheme
for /f "tokens=4" %%I in ('powercfg -getactivescheme') do set current=%%I

rem create backup
for /f "tokens=4" %%I in ('powercfg -duplicatescheme %current%') do set backup=%%I

rem switch to backup
powercfg -setactive %backup%
echo Switched from %current% to %backup%