Zamknij pętlę For - Windows Command Processor (CMD.EXE)

Próbuję znaleźć sposób na przerwanie / wyjście z pętli FOR, jeśli wystąpi jakiś błąd. Poniżej znajduje się zawartość pliku wsadowego.

@echo on

set myfile=D:\sample.txt

FOR /F "tokens=1,2 delims=," %%i in (%myfile%) do call :process "%%i"

:process
set recfile=%1%

echo %recfile%
echo "Step in Test1"
echo %errorlevel%
pause;

exit /B 0
If %errorlevel% NEQ 0 goto :fail1

:fail1
echo "Step in fail1"
pause;
exit /B 9993

:EOF

Sample.txt ma wiele rekordów. Jeśli pojawią się jakieś błędy, oczekuję, że wyjdę z pliku wsadowego, zamiast sprawdzać kompletny plik sample.txt. na przykład na instrukcji echo% recfile%, Jeśli umieściłem niewłaściwe polecenie ech% recfile%, które jest niepoprawnym poleceniem, to oczekuję, że powinien przejść do poziomu fail1 i wyjść. Pomyślał kod błędu z powodzeniem i przejdzie do poziomu fail1, jednak po tej ocenie ponownie sprawdza plik sample.txt (następny rekord). Czy jest jakiś sposób, jeśli mogę przerwać / wyjść z pętli FOR.

Proszę o radę.

Dzięki,

questionAnswers(3)

yourAnswerToTheQuestion