在Win7 with.bat文件中进行Hibernate。如何输入y用于冬眠,n用于不用于冬眠?

时间:2014-10-19 19:13:24

标签: windows batch-file cmd

我在Windows 7中为Hibernating制作了一个.bat文件。但是我想用1和2来使用n和y。但是错误级别并不支持字母。我需要做什么?

@ECHO off
ECHO Press y for hibernate,n for exit
@CHOICE /C:12
IF ERRORLEVEL 2 GOTO two
IF ERRORLEVEL 1 GOTO one
GOTO end
:one
ECHO You have pressed "1"!
GOTO end
:two
ECHO You have pressed "2"!
%windir%\system32\rundll32.exe PowrProf.dll, SetSuspendState 0,1,0
:end
@PAUSE

2 个答案:

答案 0 :(得分:3)

选择的默认值是YN,所以我不知道为什么你说它不能这样做。你告诉它只做1和2。

阅读帮助。

choice /?

第一个选择是1,第二个选择是2,...,第n个选项是n。

答案 1 :(得分:2)

使用此而不是errorlevel:

set /p answer= Press y for hibernate,n for exit
if /i "%answer%"=="n" (GOTO one)
if /i "%answer%"=="y" (GOTO two)
goto :start

我希望我帮助