我正在编写批处理代码。我想接受来自用户的字符,如果是,则应该执行一组语句,否则执行另一组语句。
我试图这样做:
set /p aj=
if %aj%==y
(
set of commands...
)
else (
another set of commands...
)
但是我无法得到完美的输出。请帮忙。
答案 0 :(得分:1)
打开命令提示符窗口,输入if /?
或help if
,点击 RETURN 或 ENTER 并阅读输出帮助。
set /p "aj=Continue (y/n)? "
if /i "%aj%"=="y" (
rem set of commands...
) else (
rem another set of commands...
)
(
必须与if
命令位于同一行。 ) else (
也必须在一行上。
答案 1 :(得分:0)
如果您的代码脚本很长,我发现使用goto
更容易。尝试这样的事情:
set /p "aj=: "
if /i "%aj%"=="y" goto :yes
:no
REM another set of commands...
goto :post
:yes
REM set of commands...
goto :post
:post
REM Code after if-statement
这样你知道你不需要enabledlayedexpansion
,你可以拥有很长的代码片段,而不用担心格式化问题。