set "option="
set /p "option= Here="
::This is the part that is not working
if %option% EQU () (goto :MyLabel)
if %option% EQU [] (goto :MyLabel)
IF [%1] == [] GOTO MyLabel
每次我在批处理文件中写入时,都会出现意外错误。我正在尝试创建一个脚本,如果用户单击输入或空格输入。它把我送回标签。请帮忙。 我已尝试过网络上的所有内容,但我可以找到解决方案。
我对此很新。
这是我的所有代码:
@echo off
:mylabel
@Echo only d .
set "option="
set /p "option= Here="
if %option% EQU d (goto :mylabel)
if %option% EQU "" (goto :mylabel)
if "%option%" EQU "" (goto :mylabel)
if "option" EQU "" (goto :mylabel)
IF "%1"=="" GOTO mylabel
-------------
:menu
set "option="
set /p "option= Here="
if "%option%" EQU "" (goto :menu)
if %option% EQU c (goto :c)
:c
答案 0 :(得分:0)
问题出现在(
)
字符上,因为在使用它们时它们会出乎意料(在空值中)。而是使用引号进行比较。
REM It appears some code is missing, so only updating what I can see.
set /p "option=Here:"
REM Check for empty with quotes.
if "%option%" EQU "" goto :MyLabel
IF "%~1" == "" GOTO MyLabel
答案 1 :(得分:0)
解决方案:
:menu
set "option="
set /p "option= Here="
if "%option%" EQU "" (goto :menu)
if %option% EQU c (goto :c)
:c