背景
Windowsでは「コントロール パネル>すべてのコントロール パネル項目>電源オプション」から電源のオプションを変更できます。
その設定は言わばパフォーマンスとバッテリーのトレードオフの関係で、必要に応じて変更しますがGUI上でぽちぽちするのではなくコマンド一発で切り替えたいものです。
今回はCygwinで行った際の実行結果を記しましたが、コマンドプロンプトやPowerShellでも同様です。
やり方
Windowsにデフォルトで搭載されているpowercfg
コマンドを用います。
$ which powercfg /cygdrive/c/Windows/system32/powercfg
コマンドの場所は上記です。
Windows上で言えば「C:\Windows\System32」となります。
ちなみに該当のディレクトリには多数のexeファイルが存在しており、例えばpで始まるものだけでもこれだけあります。
p2phost.exe
pcalua.exe
pcaui.exe
pcawrk.exe
pcwrun.exe
perfmon.exe
PkgMgr.exe
plasrv.exe
PnPUnattend.exe
PnPutil.exe
poqexec.exe
powercfg.exe
PresentationHost.exe
PresentationSettings.exe
prevhost.exe
print.exe
PrintBrmUi.exe
printfilterpipelinesvc.exe
PrintIsolationHost.exe
printui.exe
proquota.exe
psr.exe
PushPrinterConnections.exe
まずはそのPCに設定されている電源オプションの一覧を取得すべく、/L
を付与してコマンドを実行します。
日本語がそのまま表示されるとCygwinでは文字化けしてしまうので
$ powercfg /L ▒▒▒▒▒̓d▒▒▒ݒ▒ (* ▒A▒N▒e▒B▒u) ----------------------------------- ▒d▒▒▒ݒ▒▒ GUID: 381b4222-f694-41f0-9685-XXX (▒o▒▒▒▒▒X) ▒d▒▒▒ݒ▒▒ GUID: 8c5e7fda-e8bf-4a96-9a85-XXX (▒▒▒p▒t▒H▒[▒}▒▒▒X) * ▒d▒▒▒ݒ▒▒ GUID: a1841308-3541-4fab-bc81-XXX (▒ȓd▒▒)
nkf -w
を通して文字コードを変換します。
$ powercfg /L | nkf -w 既存の電源設定 (* アクティブ) ----------------------------------- 電源設定の GUID: 381b4222-f694-41f0-9685-XXX (バランス) 電源設定の GUID: 8c5e7fda-e8bf-4a96-9a85-XXX (高パフォーマンス) * 電源設定の GUID: a1841308-3541-4fab-bc81-XXX (省電力)
見方は電源設定の一意のIDである文字列と括弧付の説明、そして今どのモードかを表すアスタリスクです。
このIDを/S
オプションで指定すれば変更可能です。
$ powercfg /S a1841308-3541-4fab-bc81-XXX $ powercfg /L | nkf -w 既存の電源設定 (* アクティブ) ----------------------------------- 電源設定の GUID: 381b4222-f694-41f0-9685-XXX (バランス) 電源設定の GUID: 8c5e7fda-e8bf-4a96-9a85-XXX (高パフォーマンス) 電源設定の GUID: a1841308-3541-4fab-bc81-XXX (省電力) *
確かに変更されています。
以上、電源オプションをコマンドで変更する際の備忘録でした。