获得休眠状态

时间:2017-01-13 16:57:57

标签: powershell cmd

是否可以使用shell获得休眠状态?

我正在使用powercfg.exe来启用/禁用它,即使使用/ Q(查询),也似乎无法获得状态。

我还尝试将其基于%SystemDrive%\hiberfil.sys,但这需要管理员权限。

2 个答案:

答案 0 :(得分:5)

您可以检查注册表项:

Get-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Control\Power -name HibernateEnabled

或远程使用.Net和远程注册表:

$Reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', "ExampleComputer")
$RegKey = $Reg.OpenSubKey("SYSTEM\\CurrentControlSet\\Control\\Power")
$RegKey.GetValue("HibernateEnabled")

答案 1 :(得分:0)

根据 BenH answer的注册表查询,以下是danieljwerner.com的替代方法:

reg query "HKLM\SYSTEM\CurrentControlSet\Control\Power" /v "HibernateEnabled"

要捕获结果并将其存储到变量中,请使用:

for /F "delims=" %%V in ('
    reg query "HKLM\SYSTEM\CurrentControlSet\Control\Power" /v "HibernateEnabled"
') do set "Hibernate=%%V"