Как обрабатывать ошибки каждой части цикла for в cmd - PullRequest
0 голосов
/ 01 ноября 2019

У меня есть файлы, которые я загружаю на сервер. В настоящее время я использую командный файл с циклом for, чтобы выполнить программу для любого файла, в котором находится цикл. Как проверить, чтобы увидеть ответное сообщение каждого экземпляра цикла for? Я хочу перезапустить ту же строку снова, если в загрузке есть ошибка.

Я успешно смог записать их в вывод, но не могу заставить% errorlevel% работать для каждой части.

Я пробовал этот формат:

for %%f in (C:\Users\srose\Desktop\XMLS\corrected\*) do (
    C:\Extras\readupload.exe --config=C:\Extras\config_wf1.xml %%f  >>C:\Users\srose\Desktop\XMLS\testing_success_file.txt
    if %errorlevel% geq 0 (C:\Extras\readupload.exe --config=C:\Extras\config_wf1.xml %%f)
)

и пробовал:

for %%f in (C:\Users\srose\Desktop\XMLS\corrected\*) do (
    C:\Extras\readupload.exe --config=C:\Extras\config_wf1.xml %%f  if %errorlevel% geq 0 (C:\Extras\readupload.exe --config=C:\Extras\config_wf1.xml %%f) >>C:\Users\srose\Desktop\XMLS\testing_success_file.txt   
)

На самом деле ни один из этих двух вариантов не выглядитпопробую еще раз, но я знаю, что один файл должен выдавать ошибку аутентификации, которая не появляется в файле testing_success_file.txt. Я также попробовал, если errorlevel равен gte 0 goto error, и попытался обработать ее таким образом, но это тоже не понравилось.

...