如何读取各个 PowerCfg 设置?

How do I read individual PowerCfg settings?

如果我运行这个命令:

powercfg -SETACTIVE 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c

...我随后可以 运行 这个命令:

powercfg -GETACTIVESCHEME

...它会告诉我我做了什么。 (它将输出 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c。)

同样,如果我运行这个命令:

powercfg -change -monitor-timeout-dc 0

我想知道如何查询。是否有一些 powercfg 标志,我可以在其中读取 monitor-timeout-dc 的当前值以及类似的其他设置?

此returns 监视器超时(以秒为单位)关闭。请注意,我为 DC 超时跳过了 16 行,如果您想要 AC 超时,则跳过 15 行。

@echo off
setlocal enabledelayedexpansion

set SCHEME=8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c
set VIDEO_GUID=7516b95f-f776-4464-8c53-06167f40cc99

for /f "skip=16 tokens=1*" %%a in ('powercfg -Q !SCHEME! !VIDEO_GUID!') do (
for /f "tokens=2 delims=:" %%c in ('echo/%%a%%b') do (
set /a "timeout=%%c"&goto break))
:break
echo/%timeout%
pause>nul

您可以查询任何配置。对于方案列表,使用 powercfg -list,对于 guid 列表,使用 powercfg -aliases