我目前正在创建一个较大的批处理文件的一部分,该文件需要让用户与命令提示符交互,但我似乎遇到了 IF 语句的问题。
以下代码是我一直在尝试的:
:ONE2
cls
echo Free Roam is used like command prompt, but with additional commands.
echo Type FRHELP for a list of additional commands.
:COMMANDLOOP
echo.
set /P TEMPCMD=%CD% :
IF %TEMPCMD% == QUIT (
GOTO END2
) else if %TEMPCMD% == FRHELP (
GOTO COMMANDSLIST
) else (
%TEMPCMD%
GOTO COMMANDLOOP
)
:COMMANDSLIST
echo.
echo FRHELP = Display Free Roam Commands
echo QUIT = Leave your current Free Roam Session
GOTO COMMANDLOOP
发生的情况是,我可以在没有 IF 语句的情况下制作多部分命令(例如:cd ..)。但是使用 IF 语句,它只允许我制作单部分命令(EG:dir)。
如果我有上面列出的 IF 语句,它会给我“'..' was unexpected”错误并退出。
有什么方法可以使用这些 IF 语句将我的 TEMPCMD 变量传递到命令提示符而不出现此错误?