以下是我正在处理的批处理脚本:
@echo off
:programBEGIN
set FILE=R3D-%input1%.txt
mode con:cols=24 lines=25
color F
set /p input1=}} INPUT:
cls
if %input1%=="" goto ERR1
goto programLIST
:programLIST
echo Hello
:ERR1
echo Test
pause
每当我尝试运行bat文件并且没有输入任何值时,它会以“goto当时意外发生”的快速提示关闭
我的if语句格式是否正确,还是它继续关闭的原因?
答案 0 :(得分:3)
因为如果没有定义输入,脚本如下所示:
if =="" goto ERR1
这是语法错误。
试试这样:
if "%input1%"=="" goto ERR1
答案 1 :(得分:-1)
不要使用if语句,而是尝试这样做:
IF DEFINED "%input1%" goto ERR1
如果必须使用普通的if语句,可以试试这个:
IF "%input1%"=="" goto ERR1
只是为了确保。除此之外,我不知道问题会从哪里来。