Cairl 发表于 2021-9-28 09:28

批处理中goto找不到标签怎么不自动退出?

本帖最后由 Cairl 于 2021-9-28 11:42 编辑

我试了试这个:
goto :YES || goto :NO
发现这样不可以,好像goto不能传递 &&|| 这样的特殊字符,后来又试了试:
goto :YES
goto :NO
这样还是不行,输错了该闪退还是退,
有没有大佬有奇思妙招,能解决找不到标签不退而是回显一句话或者goto其他的地方?

极速凌风 发表于 2021-9-28 09:48

本帖最后由 极速凌风 于 2021-9-28 09:49 编辑

goto :YES
echo 错误
timeout /T 6
eixt
goto :NO

goto 找不到会继续下一行 找到就跳走了

Cairl 发表于 2021-9-28 10:14

极速凌风 发表于 2021-9-28 09:48
goto :YES
echo 错误
timeout /T 6

我试了一下,似乎不行啊
goto :YES
echo error
timeout /T 6
eixt
goto :NO
PAUSE

:NO
echo: you goto no
PAUSE

连跑都跑不起来

By丿安之若素 发表于 2021-9-28 10:22

Cairl 发表于 2021-9-28 10:14
我试了一下,似乎不行啊
goto :YES
echo error

这段代码这不直接exit了吗,就是闪一下就没了。

Gem丶屈 发表于 2021-9-28 10:26

echo 1
pause
goto 9
echo 2
:9
echo 3
pause
把:9删除了,goto找不到标签会闪退啊
至少我的电脑上是这样的

Cairl 发表于 2021-9-28 10:31

By丿安之若素 发表于 2021-9-28 10:22
这段代码这不直接exit了吗,就是闪一下就没了。

把exit删了也是一样啊goto :YES
echo error
timeout /T 6
goto :NO
PAUSE

:NO
echo: you goto no
PAUSE

梦中之梦 发表于 2021-9-28 10:42

是不是冒号是中文输入法的冒号,换一下英文输入法

blueflagbj 发表于 2021-9-28 10:50

能否专业一下,最起码去查查基本的语法好不。
gotoYESYES前面不能带冒号,冒号是写标签的时候标识下面是标签代码块。
改成这样试试看

goto YES
echo error
timeout /T 6
eixt
goto NO
PAUSE

:NO
echo: you goto no
PAUSE

kid2man 发表于 2021-9-28 10:59

goto 换用 call
goto 后边直接跟label名称,中间不加冒号
你用/?命令参数 查询goto使用简述,提示只能

Cairl 发表于 2021-9-28 11:27

blueflagbj 发表于 2021-9-28 10:50
能否专业一下,最起码去查查基本的语法好不。
gotoYESYES前面不能带冒号,冒号是写标签的时候标识下面 ...

这有差吗?不还是运行不起来吗?
页: [1] 2
查看完整版本: 批处理中goto找不到标签怎么不自动退出?