Powercfg command-line options

Use powercfg.exe to control power plans—also called power schemes—to use the available sleep states, to control the power states of individual devices, and to analyze the system for common energy-efficiency and battery-life problems.

Syntax

Powercfg command lines use the following syntax:

powercfg  /option  [arguments ]  [ /?]

where option is one of the options listed in the following table, and arguments is one or more arguments that apply to the selected option. Including /? in a command line displays help for the specified option. Options and arguments are described in more detail later in this topic.

List of command-line options

Option Description
/?, -help Displays information about command-line parameters.
/list, /L Lists all power schemes.
/query, /Q Displays the contents of a power scheme.
/change, /X Modifies a setting value in the current power scheme.
/changename Modifies the name and description of a power scheme.
/duplicatescheme Duplicates a power scheme.
/delete, /D Deletes a power scheme.
/deletesetting Deletes a power setting.
/setactive, /S Makes a power scheme active on the system.
/getactivescheme Retrieves the currently active power scheme.
/setacvalueindex Sets the value associated with a power setting while the system is powered by AC power.
/setdcvalueindex Sets the value associated with a power setting while the system is powered by DC power.
/import Imports all power settings from a file.
/export Exports a power scheme to a file.
/aliases Displays all aliases and their corresponding GUIDs.
/getsecuritydescriptor Gets a security descriptor associated with a specified power setting, power scheme, or action.
/setsecuritydescriptor Sets a security descriptor associated with a power setting, power scheme, or action.
/hibernate, /H Enables and disables the hibernate feature.
/availablesleepstates, /A Reports the sleep states available on the system.
/devicequery Returns a list of devices that meet specified criteria.
/deviceenableawake Enables a device to wake the system from a sleep state.
/devicedisablewake Disables a device from waking the system from a sleep state.
/lastwake Reports information about what woke the system from the last sleep transition.
/waketimers Enumerates active wake timers.
/requests Enumerates application and driver Power Requests.
/requestsoverride Sets a Power Request override for a particular Process, Service, or Driver.
/energy Analyzes the system for common energy-efficiency and battery life problems.
/batteryreport Generates a report of battery usage.
/sleepstudy Generates a diagnostic system power transition report.
/srumutil Dumps Energy Estimation data from System Resource Usage Monitor (SRUM).
/systemsleepdiagnostics Generates a diagnostic report of system sleep transitions.
/systempowerreport Generates a diagnostic system power transition report.

 

Descriptions of command-line options

The following sections describe Powercfg command-line options and arguments.

-help or /?

Displays information about command-line parameters.

Syntax:

powercfg  /?

/list or /L

Lists all power schemes.

Syntax:

powercfg  /list

/query or /Q

Displays the contents of the specified power scheme.

Syntax:

powercfg  /query  [scheme_GUID  [sub_GUID ]]

If neither the parameter scheme_GUID or sub_GUID are provided, the settings of the current active power scheme are displayed. If the parameter sub_GUID is not specified, all settings in the specified power scheme are displayed.

Arguments:

scheme_GUID
Specifies a power scheme GUID. Running powercfg /list returns a power scheme GUID.
sub_GUID
Specifies a power-setting subgroup GUID. A power setting subgroup GUID is returned by running powercfg /query.

Examples:

powercfg /query
powercfg /query 381b4222-f694-41f0-9685-ff5bb260df2e 238c9fa8-0aad-41ed-83f4-97be242c8f20

/change or /X

Modifies a setting value in the current power scheme.

Syntax:

/change  setting  value

Arguments:

setting
Specifies one of the following options:

  • monitor-timeout-ac
  • monitor-timeout-dc
  • disk-timeout-ac
  • disk-timeout-dc
  • standby-timeout-ac
  • standby-timeout-dc
  • hibernate-timeout-ac
  • hibernate-timeout-dc
value
Specifies the new value, in minutes.

Examples:

powercfg /change monitor-timeout-ac 5

/changename

Modifies the name of a power scheme and optionally its description.

Syntax:

powercfg  /changename  scheme_GUID  name  [description ]

Arguments:

scheme_GUID
Specifies a power scheme GUID. Running powercfg /list returns a power scheme GUID.
name
Specifies the power scheme’s new name.
description
Specifies the power scheme’s new description. If no description is specified, only the name is changed.

Examples:

powercfg /changename 381b4222-f694-41f0-9685-ff5bb260df2e "Customized Balanced"

/duplicatescheme

Duplicates the specified power scheme. The resulting GUID which represents the new scheme is displayed.

Syntax:

powercfg  /duplicatescheme  scheme_GUID  [destination_GUID ]

Arguments:

 

scheme_GUID

Specifies a power scheme GUID. A power scheme GUID is returned by running powercfg /list.

destination_GUID

Specifies the new power scheme’s GUID. If no GUID is specified, a new GUID is created.

 

Examples:

powercfg /duplicatescheme 381b4222-f694-41f0-9685-ff5bb260df2e

/delete or /D

Deletes the power scheme with the specified GUID.

Syntax:

powercfg  /delete  scheme_GUID

Arguments:

scheme_GUID
Specifies a power scheme GUID. A power scheme GUID is returned by running powercfg /list.

Examples:

powercfg /delete 381b4222-f694-41f0-9685-ff5bb260df2e

/deletesetting

Deletes a power setting.

Syntax:

powercfg  /deletesetting  sub_GUID  setting_GUID

Arguments:

sub_GUID
Specifies a power setting subgroup GUID. A power setting subgroup GUID is returned by running powercfg /query.
setting_GUID
Specifies a power setting GUID. A power setting GUID is returned by running powercfg /query.

Examples:

powercfg /deletesetting 238c9fa8-0aad-41ed-83f4-97be242c8f20 29f6c1db-86da-48c5-9fdb-f2b67b1f44da

/setactive or /S

Makes the specified power scheme active on the system.

Syntax:

powercfg  /setactive  scheme_GUID

Arguments:

scheme_GUID
Specifies a power scheme GUID. A power scheme GUID is returned by running powercfg /list.

Examples:

powercfg /setactive 381b4222-f694-41f0-9685-ff5bb260df2e

/getactivescheme

Retrieves the currently active power scheme.

Syntax:

powercfg  /getactivescheme

/setacvalueindex

Sets the value associated with a specified power setting while the system is powered by AC power.

Syntax:

powercfg  /setacvalueindex  scheme_GUID  sub_GUID  setting_GUID  setting_index

Arguments:

scheme_GUID
Specifies a power scheme GUID. A power scheme GUID is returned by running powercfg /list.
sub_GUID
Specifies a power setting subgroup GUID. Running powercfg /query returns a power setting subgroup GUID.
setting_GUID
Specifies a power setting GUID. A power setting GUID is returned by running powercfg /query.
setting_index
Specifies which possible value this setting is set to. A list of possible values is returned by running powercfg /query.

Examples:

powercfg /setacvalueindex 381b4222-f694-41f0-9685-ff5bb260df2e 238c9fa8-0aad-41ed-83f4-97be242c8f20 29f6c1db-86da-48c5-9fdb-f2b67b1f44da 0

/setdcvalueindex

Sets the value associated with a specified power setting while the system is powered by DC power.

Syntax:

powercfg  /setdcvalueindex  scheme_GUID  sub_GUID  setting_GUID  setting_index

Arguments:

scheme_GUID
Specifies a power scheme GUID. A power scheme GUID is returned by running powercfg /list.
sub_GUID
Specifies a power setting subgroup GUID. A power setting subgroup GUID is returned by running powercfg /query.
setting_GUID
Specifies a power setting GUID. A power setting GUID is returned by running powercfg /query.
setting_index
Specifies which possible value this setting is set to. A list of possible values is returned by running powercfg /query.

Examples:

powercfg /setdcvalueindex 381b4222-f694-41f0-9685-ff5bb260df2e 238c9fa8-0aad-41ed-83f4-97be242c8f20 29f6c1db-86da-48c5-9fdb-f2b67b1f44da 300

/import

Imports a power scheme from the specified file.

Syntax:

powercfg  /import  file_name  [GUID ]

Arguments:

file_name
Specifies a fully-qualified path to a file returned by running powercfg /export.
GUID
Specifies the GUID for the imported scheme. If no GUID is specified, a new GUID is created.

Examples:

powercfg /import c:\scheme.pow

/export

Exports a power scheme, represented by the specified GUID, to the specified file.

Syntax:

powercfg  /export  file_name  GUID

Arguments:

file_name
Specifies a fully-qualified path to a destination file.
GUID
Specifies a power scheme GUID. A power scheme GUID is returned by running powercfg /list.

Examples:

powercfg /export c:\scheme.pow 381b4222-f694-41f0-9685-ff5bb260df2e

/aliases

Displays a list of aliases and their corresponding GUIDs. These aliases may be used instead of a GUID in any command.

Syntax:

powercfg  /aliases

NoteSome settings do not contain aliases. For a full list of GUIDs, use powercfg /query.

/getsecuritydescriptor

Gets the security descriptor associated with the specified power setting, power scheme, or action.

Syntax:

powercfg  /getsecuritydescriptor  GUID | action

Arguments:

GUID
Specifies a power scheme or a power setting GUID. A power scheme GUID is returned by running powercfg /list. A power setting GUID is returned by running powercfg /query.
action
Specifies one of the following actions:

  • ActionSetActive
  • ActionCreate
  • ActionDefault

Examples:

powercfg /getsecuritydescriptor 381b4222-f694-41f0-9685-ff5bb260df2e
powercfg /getsecuritydescriptor ActionSetActive

/setsecuritydescriptor

Sets a security descriptor associated with the specified power setting, power scheme, or action.

Syntax:

powercfg  /setsecuritydescriptor  GUID | action  SDDL

Arguments:

GUID
Specifies a power scheme or a power setting GUID. A power scheme GUID is returned by running powercfg /list. A power setting GUID is returned by running powercfg /query.
action
Specifies one of the following actions:

  • ActionSetActive
  • ActionCreate
  • ActionDefault
SDDL
Specifies a valid security descriptor string in SDDL format. An example SDDL string can be obtained by running powercfg /getsecuritydescriptor.

Examples:

powercfg /setsecuritydescriptor 381b4222-f694-41f0-9685-ff5bb260df2e O:BAG:SYD:P(A;CI;KRKW;;;BU)(A;CI;KA;;;BA)(A;CI;KA;;;SY)(A;CI;KA;;;CO)

powercfg /setsecuritydescriptor ActionSetActive O:BAG:SYD:P(A;CI;KR;;;BU)(A;CI;KA;;;BA)(A;CI;KA;;;SY)(A;CI;KA;;;CO)

/hibernate or /h

Enables or disables the hibernate feature; also, sets the hiberfile size.

Syntax:

powercfg  /hibernate

powercfg  /hibernate  [on | off]

powercfg  /hibernate  [ /size  percent_size ]

powercfg  /hibernate  [ /type  reduced | full ]

Arguments:

On
Enables the hibernate feature.
Off
Disables the hibernate feature.
/size percent_size
Specifies the desired hiberfile size as a percentage of the total memory size. The default size cannot be smaller than 50. This parameter also causes hibernation to be enabled.
/type reduced | full
Specifies the desired hiberfile type. A reduced hiberfile only supports hiberboot.

Note   A hiberfile that has a custom default size, or HiberFileSizePercent >= 40, is considered as a full hiberfile. HiberFileSizePercent is set in the registry in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power.To change the hiberfile type to reduced, the OS has to manage the default hiberfile size. To do this, run the following commands:

powercfg /hibernate /size 0

powercfg /hibernate /type reduced

Examples:

powercfg /hibernate off
powercfg /hibernate /size 100
powercfg /hibernate /type reduced

/availablesleepstates or /A

Reports the sleep states available on the system. Attempts to report reasons why sleep states are unavailable.

Syntax:

powercfg  /availablesleepstates

/devicequery

Returns a list of devices that meet the specified criteria.

Syntax:

powercfg  /devicequery  query_flag

Arguments:

query_flag
Specifies one of the following criteria:

wake_from_S1_supported
Returns all devices that support waking the system from a light sleep state.
wake_from_S2_supported
Returns all devices that support waking the system from a deeper sleep state.
wake_from_S3_supported
Returns all devices that support waking the system from the deepest sleep state.
wake_from_any
Returns all devices that support waking the system from any sleep state.
S1_supported
Lists devices supporting light sleep.
S2_supported
Lists devices supporting deeper sleep.
S3_supported
Lists devices supporting deepest sleep. S4_supported List devices supporting hibernation.
wake_programmable
Lists devices that are user-configurable to wake the system from a sleep state.
wake_armed
Lists devices that are currently configured to wake the system from any sleep state.
all_devices
Returns all devices present in the system.

Examples:

powercfg /devicequery wake_armed

/deviceenableawake

Enables the specified device to wake the system from a sleep state.

Syntax:

powercfg  /deviceenableawake  device_name

Arguments:

device_name
Specifies a device. This device name may be retrieved using powercfg /devicequery wake_programmable.

Examples:

powercfg /deviceenableawake "Microsoft USB IntelliMouse Optical"

/devicedisablewake

Disables the specified device from waking the system from a sleep state.

Syntax:

powercfg  /devicedisablewake  device_name

Arguments:

device_name
Specifies a device. This device name may be retrieved using powercfg /devicequery wake_armed.

Examples:

powercfg /devicedisablewake "Microsoft USB IntelliMouse Optical"

/lastwake

Reports information about what woke the system from the last sleep transition.

Syntax:

powercfg  /lastwake

/waketimers

Enumerates the active wake timers. If enabled, the expiration of a wake timer wakes the system from sleep and hibernate states.

Syntax:

powercfg  /waketimers

/requests

Enumerates application and driver Power Requests. Power Requests prevent the computer from automatically powering off the display or entering a low-power sleep mode.

Syntax:

powercfg  /requests

/requestsoverride

Sets a Power Request override for a particular process, service, or driver. If no parameters are specified, this command displays the current list of Power Request overrides.

Syntax:

powercfg  /requestsoverride  [caller_type  name  request ]

Arguments:

Caller_type
Specifies one of the following caller types: processservicedriver. This is obtained by running powercfg /requests.
name
Specifies the caller name. This is the name returned by running powercfg /requests.
request
Specifies one or more of the following Power Request types:

  • Display
  • System
  • Awaymode

Examples:

powercfg /requestsoverride process wmplayer.exe display system

/energy

Analyzes the system for common energy-efficiency and battery-life problems and generates a report, an HTML file, in the current path.

Syntax:

powercfg  /energy  [ /output  file_name ]  [ /xml]  [ /duration  seconds ]

powercfg  /energy  /trace  [ /d  file_path ]  [ /xml]  [ /duration  seconds ]

The /energy option should be used when the computer is idle and has no open programs or documents.

Arguments:

/output file_name
Specify the path and file name to store the energy report HTML or XML file.
/xml
Formats the report file as XML.
/duration seconds
Specifies the number of seconds to observe system behavior. Default is 60 seconds.
/trace
Records system behavior and does not perform analysis. Trace files are generated in the current path unless the /D parameter is specified.
/d file_path
Specify the directory to store trace data. May only be used with the /trace parameter.

Examples:

powercfg /energy
powercfg /energy /output "longtrace.html" /duration 120

/batteryreport

Generates a report of battery usage characteristics over the lifetime of the system. Running powercfg /batteryreport generates an HTML report file in the current path.

Syntax:

powercfg  /batteryreport  [ /output  file_name ]  [ /xml]

powercfg  /batteryreport  [ /duration  days ]

Arguments:

/output file_name
Specify the path and file name to store the battery report HTML.
/output file_name /xml
Formats the battery report file as XML.
/duration days
Specifies the number of days to analyze for the report.

Examples:

powercfg /batteryreport /output "batteryreport.html"
powercfg /batteryreport /duration 4

/sleepstudy

Generates a diagnostic report of modern standby quality over the last three days on the system. The report is a file that is saved in the current path.

Syntax:

powercfg  /sleepstudy  [ /output  file_name ]  [ /xml]

powercfg  /sleepstudy  [ /duration  days ]

powercfg  /sleepstudy  [ /transformxmL  file_name.xml ]  [ /output  file_name.html ]

Arguments:

/output file_name
Specify the path and file name to store the Sleepstudy report HTML.
/output file_name /xml
Formats the Sleepstudy report file as XML.
/duration days
Specifies the number of days to analyze for the report.
/transformxml file_name.xml /output file_name.html
Transforms the Sleepstudy report from XML to HTML.

Examples:

powercfg /sleepstudy /output "sleepstudy.html"
powercfg /sleepstudy /duration 7

/srumutil

Enumerates the entire Energy Estimation data from the System Resource Usage Monitor (SRUM) in an XML or CSV file.

Syntax:

powercfg  /srumutil  [ /output  file_name ]  [ /xml]  [ /csv]

Arguments:

/output file_name
Specify the path and file name to store the SRUM data.
/output file_name /xml
Formats the file as XML.
/output file_name /csv
Formats the file as CSV.

Examples:

powercfg /batteryreport /output "srumreport.xml" /xml

/systemsleepdiagnostics

Generates a report of intervals when the user was not present over the last three days on the system, and if the system went to sleep. This option generates a report, an HTML file, in the current path.

This command requires administrator privileges and must be executed from an elevated command prompt.

Syntax:

powercfg  /systemsleepdiagnostics  [/output  file_name ]  [/xml ]

Arguments:

/output file_name
Specifies the path and file name of the diagnostics report.
/xml
Save the report as an XML file.
/duration days
Specifies the number of days to analyze for the report.
/transformxml file_name
Produces a report in HTML from a report that was previously created in XML.

Examples:

powercfg /systemsleepdiagnostics
powercfg /systemsleepdiagnostics /output "system-sleep-diagnostics.html"
powercfg /systemsleepdiagnostics /output "system-sleep-diagnostics.xml" /XML
powercfg /systemsleepdiagnostics /transformxml "system-sleep-diagnostics.xml"

/systempowerreport or /spr

Generates a report of system power transitions over the last three days on the system, including connected standby power efficiency. This option generates a report, an HTML file, in the current path.

This command requires administrator privileges and must be executed from an elevated command prompt.

Syntax:

powercfg  /getsecuritydescriptor  GUID | action

Arguments:

/output file_name
Specifies the path and file name of the diagnostics report.
/xml
Save the report as an XML file.
/duration days
Specifies the number of days to analyze for the report.
/transformxml file_name
Produces a report in HTML from a report that was previously created in XML.

Examples:

powercfg /systempowerreport
powercfg /systempowerreport /output "sleepstudy.html"
powercfg /systempowerreport /output "sleepstudy.xml" /XML
powercfg /systempowerreport /transformxml "sleepstudy.xml"

Source: https://docs.microsoft.com/en-us/windows-hardware/design/device-experiences/powercfg-command-line-options