小编Jor*_*ens的帖子

使用"EXIT/BX"退出批次,其中X> = 1,就像使用&&或||时命令成功完成一样 批量调用之间的运算符

我正在尝试使用该EXIT /B X命令链接一系列.bat文件以返回成功或失败,&&以及||有条件地运行下一个.bat(例如a.bat && b.bat).

无论我是打电话EXIT /B 0还是其他任何结束a.bat,a.bat && b.bat都会在之后拨打b.bat.我的理解是EXIT /B 0应该设定ERRORLEVEL=0,这是成功,所以&&应该继续.与此相对应的是,调用EXIT /B 1应该设置ERRORLEVEL=1哪个失败,所以&&应该停止.我在这里错过了什么?

琐碎的例子:

对于非批处理命令,按预期执行:

C:\> echo test|findstr test>NUL && echo yes
yes

C:\> echo test|findstr test>NUL || echo yes

C:\> echo test|findstr nope>NUL && echo yes

C:\> echo test|findstr nope>NUL || echo yes
yes
Run Code Online (Sandbox Code Playgroud)

使用EXIT /B始终将a.bat视为成功:

C:\> echo @EXIT /B 0 > …
Run Code Online (Sandbox Code Playgroud)

windows cmd batch-file exit errorlevel

18
推荐指数
2
解决办法
2万
查看次数

标签 统计

batch-file ×1

cmd ×1

errorlevel ×1

exit ×1

windows ×1