каждую ночь запускается задача, которая проверяет, есть ли у какой-либо запланированной задачи последний результат, не равный 0x0. Если в запланированных задачах есть ошибка 0x1, то мне автоматически отправляется электронное письмо. Поскольку некоторые задачи выполняются только еженедельно, а иногда возникает ошибка, результатом которой является не 0x0, каждую ночь отправляется электронное письмо с сообщением об ошибке, так как последний столбец результатов по-прежнему показывает последний результат 0x1. Но я хотел бы установить последний столбец результата в 0x0 вручную, если бы я решил проблема, поэтому я не буду получать каждую ночь по электронной почте с сообщением об ошибке.
так можно ли вручную (или скриптом) задать для запланированных задач последний результат 0x0?
@harrymc. См. расположенный ниже сценарий отправки электронной почты. Я могу легко добавить критерии для игнорирования результата 0x1 (или другого кода), однако это не решение, поскольку в большинстве случаев этот результат является реальной ошибкой и должен быть отправлен по электронной почте.
set YourEmailAddress=to@email.com
set SMTPServer=SMTPserver
set PathToScript=c:scripts
set FromAddress=from@email.com
for /F "delims=" %%a in ('schtasks /query /v /fo:list ^| findstr /i "Taskname Result"') do call :Sub %%a
goto :eof
:Sub
set Line=%*
set BOL=%Line:~0,4%
set MOL=%Line:~38%
if /i %BOL%==Task (
set name=%MOL%
goto :eof
)
set result=%MOL%
echo Task Name=%name%, Task Result=%result%
if not %result%==0 (
echo Task %name% failed with result %result% > %PathToScript%taskcheckerlog.txt
bmail %PathToScript%taskcheckerlog.txt -t %YourEmailAddress% -a "Warning! Failed %name% Scheduled Task on %computername%" -s %SMTPServer% -f %FromAddress% -b "Task %name% failed with result %result% on CorVu scheduler %computername%"
)