Если я запускаю этот код:
:loop
(type "File" | findstr Idle) > nul 2>&1
timeout 1
if errorlevel 1 goto loop
Затем, если строка "Idle" не может быть найдена в File, она начнется заново с "loop" и будет продолжаться до тех пор, пока не будет найдена "Idle", после чего она будет перемещаться дальше в коде. Это все хорошо, и если бы мой код был структурирован так, чтобы он был внизу кода, а не сверху, все было бы в порядке, но мне нужно, чтобы это была первая команда (поэтому, если Idle найден Повторите этот цикл, если холостой ход не найден, двигайтесь вниз)
Но когда я запускаю этот код:
:loop
(type "File" | findstr Idle) > nul 2>&1
timeout 1
if errorlevel 0 goto loop
Он всегда будет начинаться с "цикла" независимо от того, можно ли найти строку "Idle".
Мне действительно нужно иметь возможность запустить команду, если строка найдена (а не если строка не найдена (я не планирую использовать здесь "goto", мне нужно запускать определенные команды (например, "goto"), когда » Idle "найден, и другой набор команд, когда он не найден, поэтому мне нужно два допустимых уровня ошибки или альтернатива).
Почему это не работает, и как я могу это сделать?