Powercfgコマンド

電源設定を制御できます。

構文

POWERCFG /コマンド [引数]
コマンド 別名  
/LIST /L すべての電源設定を一覧表示する
(登録されている電源設定 (電源プラン) の一覧を表示)
/QUERY /Q 電源設定の内容を表示する
(現在アクティブな電源設定、もしくは指定の電源設定の内容の表示)
/CHANGE /X 現在の電源設定の設定値を変更する
/CHANGENAME   電源設定の名前と説明を変更する
/DUPLICATESCHEME   電源設定を複製する
/DELETE GUID /D 電源設定を削除する
/DELETESETTING Sub_GUID Setting_GUID   電源設定を削除する
/SETACTIVE /S 電源設定をシステム上でアクティブにする
/GETACTIVESCHEME   現在アクティブになっている電源設定を取得する
/SETACVALUEINDEX   システムがAC電源から電力を供給されているときに電源設定に関連付ける値を設定する
/SETDCVALUEINDEX   システムがDC電源から電力を供給されているときに電源設定に関連付ける値を設定する
/IMPORT   ファイルから電源設定をすべてインポートする
/EXPORT   電源設定をファイルにエクスポートする
/ALIASES   すべてのエイリアスとそれに対応するGUIDを表示する
/GETSECURITYDESCRIPTOR   指定された電源設定または操作に関連付けられたセキュリティ記述子を取得する
/SETSECURITYDESCRIPTOR   電源設定または操作に関連付けられたセキュリティ記述子を設定する
/HIBERNATE /H 休止状態機能を有効または無効にする
/AVAILABLESLEEPSTATES /A システムで利用可能なスリープ状態を報告する
/DEVICEQUERY   指定された条件を満たすデバイスの一覧を返す
/DEVICEENABLEWAKE   デバイスがシステムのスリープ状態を解除できるようにする
/DEVICEDISABLEWAKE   デバイスがシステムのスリープ状態を解除できないようにする
/LASTWAKE   システムの最後のスリープ状態の解除元に関する情報を報告する
/WAKETIMERS   アクティブなスリープ解除タイマーを列挙する
/REQUESTS   アプリケーションとドライバーの電源要求を列挙する
/REQUESTSOVERRIDE   特定のプロセス、サービス、またはドライバーに対する電源要求の優先を設定する
/ENERGY   エネルギー効率とバッテリ寿命に関する一般的な問題がないかシステムを分析する
/BATTERYREPORT   バッテリの使用状況のレポートを生成する
/SLEEPSTUDY   コネクト スタンバイの診断レポートを生成する
/SRUMUTIL   システム リソース使用状況モニター (SRUM) からエネルギー推定データをダンプする
powercfg ?

/QUERY

電源設定の値を取得できます。

POWERCFG /QUERY [SCHEME_GUID [SUB_GUID]]
パラメータ 意味 有効な値の確認方法
SCHEME_GUID 電源設定のGUID POWERCFG /LIST
SUB_GUID 電源設定サブグループのGUID POWERCFG /QUERY

現在アクティブな電源設定を指定するならば、/LISTで得られるGUIDの代わりにエイリアスのSCHEME_CURRENTで指定できます。ASCII.jp:Windowsマシンの電源関係を制御する「Powercfg」コマンドを極める (2/2) 塩田紳二 (2019/06/16)

/CHANGE

設定値を変更できます。

POWERCFG /CHANGE setting value

settingに指定可能な値はpowercfg /change ?で確認できますが、それは下表のような内容です。

設定対象 電源
次の時間が経過後ディスプレイの電源を切る monitor-timeout-ac AC電源
monitor-timeout-dc DC電源
次の時間が経過後ハード ディスクの電源を切る disk-timeout-ac AC電源
disk-timeout-dc DC電源
次の時間が経過後スリープする standby-timeout-ac AC電源
standby-timeout-dc DC電源
次の時間が経過後休止状態にする hibernate-timeout-ac AC電源
hibernate-timeout-dc DC電源

/queryの結果は単位が秒の16進数で表示されますが、valueでは単位を10進数で指定します。

たとえばAC電源でのディスプレイの電源を切る時間を5分にするには、次のように指定します。

powercfg /change monitor-timeout-ac 5

もしこの時間が35,791,394分 (35791394分) に設定されていたら、それは32bit符号付き整数の上限の2,147,483,647 (0x7FFFFFFF) 秒を分に換算した、2147483647÷60=35,791,394.11666667の整数部です。

/SETACVALUEINDEX

AC電源での、電源設定の値を設定できます。DC電源では代わりにSETDCVALUEINDEXを用います。

POWERCFG /SETACVALUEINDEX SCHEME_GUID SUB_GUID SETTING_GUID SETTING_INDEX

ロック時に、ディスプレイの電源が切れる時間の変更

PCがロックされたときには、既定では1分後にディスプレイの電源が切れます。これを変更するにはSETTING_GUIDをVIDEOCONLOCKとして、SETTING_INDEXで切れるまでの時間を秒数で指定します。たとえば10秒とするには、

C:\>powercfg /setacvalueindex SCHEME_CURRENT SUB_VIDEO VIDEOCONLOCK 10

として、続けてこれをアクティブにするために

C:\>powercfg /setactive SCHEME_CURRENT

とします。現在設定されている値は/queryで確認できますが、このConsole lock display off timeoutの設定は、Windows 10以降は既定で隠し属性が付けられているため、

C:\>powercfg /query SCHEME_CURRENT SUB_VIDEO VIDEOCONLOCK
電源設定の GUID: 381b4222-f694-41f0-9685-ff5bb260df2e  (バランス)
  GUID エイリアス: SCHEME_BALANCED

のように出力され、値を確認できません。よって、

C:\>powercfg -attributes SUB_VIDEO 8EC4B3A5-6868-48c2-BE75-4F3044BE88A7 -ATTRIB_HIDE

のようにして属性を除去することで、次のようの値を確認できます。

C:\>powercfg /query SCHEME_CURRENT SUB_VIDEO VIDEOCONLOCK
電源設定の GUID: 381b4222-f694-41f0-9685-ff5bb260df2e  (バランス)
  GUID エイリアス: SCHEME_BALANCED
  サブグループの GUID: 7516b95f-f776-4464-8c53-06167f40cc99  (ディスプレイ)
    GUID エイリアス: SUB_VIDEO
    電源設定の GUID: 8ec4b3a5-6868-48c2-be75-4f3044be88a7  (コンソール ロック ディスプレイ オフのタイムアウト)
      GUID エイリアス: VIDEOCONLOCK
      利用可能な設定の最小値: 0x00000000
      利用可能な設定の最大値: 0xffffffff
      利用可能な設定の増分: 0x00000001
      利用可能な設定の単位: 秒
    現在の AC 電源設定のインデックス: 0x0000000a
    現在の DC 電源設定のインデックス: 0x0000003c
Monitor powers off when computer is locked - Windows Client | Microsoft Learn

/DEVICEQUERY

指定の条件を満たすデバイスを確認できます。

POWERCFG /DEVICEQUERY QUERYFLAG
区分 QUERYFLAG  
解除 wake_from_S1_supported 浅いスリープ状態の解除を、サポートするデバイスをすべて返す
wake_from_S2_supported 深いスリープ状態の解除を、サポートするデバイスをすべて返す
wake_from_S3_supported 最深のスリープ状態の解除を、サポートするデバイスをすべて返す
wake_from_any スリープ状態の解除を、サポートするデバイスをすべて返す
サポート S1_supported 浅いスリープを、サポートするデバイスの一覧を表示する
S2_supported 深いスリープを、サポートするデバイスの一覧を表示する
S3_supported 最深のスリープを、サポートするデバイスの一覧を表示する
S4_supported システムの休止状態を、サポートするデバイスの一覧を表示する
  wake_programmable システムのスリープ状態の解除を、ユーザーが構成できるデバイスの一覧を表示する
  wake_armed スリープ状態を解除できるように現在構成されているデバイスの一覧を表示する
  all_devices システムにあるデバイスをすべて返す

/REQUESTS

C:\>powercfg /requests
DISPLAY:
なし。

SYSTEM:
なし。

AWAYMODE:
なし。

実行:
なし。

PERFBOOST:
なし。

ACTIVELOCKSCREEN:
なし。

/ENERGY

POWERCFG /ENERGY [/OUTPUT <ファイル名>] [/XML] [/DURATION <秒>]
C:\>powercfg /energy
トレースを 60 秒間有効にしています...
システムの動作を監視しています...
トレース データを分析しています...
分析が完了しました。

エネルギー効率の問題が見つかりました。

* 個のエラー
* 個の警告
* 個の情報

詳細については、C:\energy-report.html を参照してください。

既定では実行したパスのenergy-report.htmlに出力されるため、それで結果を確認します。

/BATTERYREPORT

バッテリーの使用状況を確認できます。Windows 8.0/8.1でノートパソコンの詳細なバッテリー利用状況のレポートを取得する:Tech TIPS - @IT 小林章彦 (2014/10/10)

ただしバッテリー回路の不良はこの結果に表れないため、良好な状態を示していても使用不能なこともあります。

/POWERTHROTTLING

アプリケーションの電源調整の設定を制御できます。

DISABLEで、指定のパスにあるアプリケーションの電源調整を無効にできます。

POWERCFG /POWERTHROTTLING DISABLE /PATH <FILEPATH>

RESETで、既定の構成にリセットできます。

POWERCFG /POWERTHROTTLING RESET /PATH <FILEPATH>

LISTで、無効にされているアプリケーションを一覧できます。

POWERCFG /POWERTHROTTLING LIST
コンピュータの情報サイトから、まとめて検索