web-dev-qa-db-ja.com

休止状態に応じて処理するバッチファイルを作成したい

次のような単純なバッチファイルを作成したいと思います。

SET HibernateEnabled=[getHibernationStatus]
IF HibernateEnabled==1
 ECHO do things
ELSE
 ECHO do other things

さらに、WindowsPowershellは使用したくありません。なにか提案を?

2
Radioga

Windows 1064ビット

Cmd、for in do、reg query、およびfindを使用して、休止状態のレジストリ値を決定し、ifを使用して結果を処理します。

CMD:

cmd /q /e 
FOR /f "tokens=3" %g in ('reg query HKLM\SYSTEM\ControlSet001\Control\Power\ ^|FIND /i "HibernateEnabled "') do if %g==0x1 (
echo. 
echo hibernation enabled
echo do things   
) else ( 
echo.
echo hibernation disabled
echo do other things
)  

脚本:

@echo off
setlocal enableextensions
FOR /f "tokens=3" %%g in ('reg query HKLM\SYSTEM\ControlSet001\Control\Power\ ^|FIND /i "HibernateEnabled "') do if %%g==0x1 (
echo. 
echo hibernation enabled
echo do things   
) else ( 
echo.
echo hibernation disabled
echo do other things
)
pause   
exit /b 
4
somebadhat