sus*_*l95 6 if-statement batch-file
我正在尝试编写批处理脚本以获取变量中的字符串并检查它是否为空,如果它是空的,则将其定向到循环.以下代码表示问题
:loop
set /p cide=
IF NOT "a%1"=="a" (set cide="%1")
IF [%1]==[] goto loop
ELSE
echo IDE entered
TIMEOUT 5 > NUL
Run Code Online (Sandbox Code Playgroud)
即使我给了一个字符串,程序也会再次循环.
我试图把它IF [%cide%]==[] goto loop或IF %cide%==[] goto loop它给出一个错误,说明"ELSE"无法识别.
任何帮助表示赞赏.谢谢
你可以试试这样的东西:
@echo off
:loop
cls & Color 0A
echo Type what you want !
set /p "cide="
IF "%cide%"=="" (
Cls & Color 0C
echo You must enter something
Timeout /T 2 /NoBreak>nul
goto loop
) ELSE (
Goto Next
)
:Next
Cls
echo %cide% is entered
pause
Run Code Online (Sandbox Code Playgroud)
小智 6
@echo off
:loop
cls & Color 0A
echo Type what you want !
set /p "cide="
IF [%cide%]==[] (
Cls & Color 0C
echo You must enter something
choice /d y /t 2 > nul
goto loop
) ELSE (
Goto Next
)
:Next
Cls
echo %cide% is entered
pause
Run Code Online (Sandbox Code Playgroud)