批处理中怎么能让for循环语句重新执行某一次的程序

for循环语句中,如果中间某一次出错了,我会pause让程序暂停,等待用户修改。
用户修改好后按任意键,我想回到刚才出错的这一次重新执行,怎么写呢?

cmd提供了&&和|| 两命令连接符分别处理上一命令“正常”运行和“不正常”时运行
比如 set/a x=100/a || set x=0
还可以用 if 判断
if %errorlevel% gtr 0 echo 上一命令非正常执行
而for循环内一般应避免这种情况,实在要暂停且让用户处理可以这样写(:sub执行完后会从call之后继续执行的for命令,所以如果要重执行上一出错命令得在:sub中考虑)

for ...省略.......do (
。。。
某命令||(call :sub
。。。

。。。
exit
:sub
echo 上一命令出错,提示按任意键提示如何如何处理....
pause>nul
写上要处理的命令系列
。。。。
goto :eof
温馨提示:答案为网友推荐,仅供参考
相似回答