Планировщик заданий Windows (Task Scheduler) позволяет запускать задачи как по расписанию, так и при появлении в журнале определенного события (описывалось в статье « Триггеры событий в Windows »). В этой статье мы покажем, как создать задание планировщика, которое автоматически запускается после успешного завершения другого задания.
Предположим, нам нужно запустить задание планировщика Pong после успешного завершения задания Ping .
Taskschd.msc
) и найдите задание Ping ;
EventID: 102_x000D_Provider-Name: Microsoft-Windows-TaskScheduler_x000D_Channel: Microsoft-Windows-TaskScheduler/Operational_x000D_TaskName: MyTasksPing
eventvwr.msc
) и перейдите в раздел Applications and Services Log -> Microsoft -> Windows -> Task Scheduler -> Operational. Щелкните правой клавишей по журналу и выберите опцию Enable Log.
Теперь вы можете создать задание планировщика Pong .
При создании триггера для задания Pong нужно указать условие срабатывания задания при появлении в журнале события 102 (Триггер задания On an event ). Но проблема в том, что EventID 102 появляется при завершении любого задания, а не только задания Ping.
Вы можете создать более гибкое условия для выбора событий ( Custom ), когда стандартный фильтр не помогает достаточно четко выбрать событие. Нажмите на кнопку New Event Filter .
Создайте новый фильтр, указав ранее полученные данные из XML представления события.
Перейдите на вкладку XML . На ней будет выведено XML представление вашего фильтра (XPath):
<QueryList>_x000D_<Query Id="0" Path="Microsoft-Windows-TaskScheduler/Operational">_x000D_<Select Path="Microsoft-Windows-TaskScheduler/Operational">*[System[Provider[@Name='Microsoft-Windows-TaskScheduler'] and Task = 102]]</Select>_x000D_</Query>_x000D_</QueryList>
Включите опцию Edit query manually. Вам нужно привязать ваш фильтр к заданию MyTasksPing. Для этого нужно заменить в фильтре строку:
*[System[Provider[@Name='Microsoft-Windows-TaskScheduler'] and Task = 102]]
На
*[EventData [@Name='TaskSuccessEvent'][Data[@Name='TaskName']='MyTasksPing']]
Сохраните настройки вашего фильтра на вкладке Triggers ( Custom Event Filter ) и сохраните задание pong.
Теперь попробуйте запустить задание ping (вручную, по расписанию или с помощью PowerShell : Start-ScheduledTask mytasksping
). Когда задание ping успешно завершится, задание pong будет запущено немедленно.
Формат записи XPath представлене ниже.
Таким образом вы можете настроить целые цепочки заданий (task chains), для последовательного запуска заданий планировщика. По аналогии вы можете создать любые другие зависимости в заданиях планировщика Windows. Например, в случае успешной отработки задания резервного копирования вы запускаете один сценарий, а если резервное копирование завершилось с ошибкой – вам нужно запустить сценарий очистки или исправления текущего состояния.
Если говорить о том, какие лучшие дистрибутивы Linux мы знаем, то этот список может быть…
Хотя Ubuntu и поставляется со встроенным обозревателем Firefox многие пользователи считают что это не самая…
Что такое Remmina? Remmina — это совершенно бесплатный и свободный клиент так называемого удаленного рабочего…
Как мы знаем, Ubuntu это самая популярная сборка из систем на базе ядра Linux. У…
Выбор ноутбука для каждого пользователя это довольно кропотливый процесс. Люди стараются подобрать ноутбук который будет…
Если вы решили ознакомиться с операционной системой Linux более детально и задались вопросом как установить…