Windows 작업 스케줄러에서는 일정에 따라 그리고 특정 이벤트가 로그에 등록된 후에 작업을 실행할 수 있습니다. ("Windows의 이벤트 트리거" 기사에서 설명했습니다.) 이 기사에서는 이전 작업이 완료된 후 스케줄러 작업을 자동으로 시작하는 방법을 고려할 것입니다. . 필요에 맞게 사용자 정의할 수 있는 실행 중인 스케줄러 작업의 종속성을 구성하는 알고리즘을 살펴보겠습니다.
제 경우에는 한 스크립트가 완료된 후 다른 사용자 계정에서 다른 스크립트를 시작해야 했습니다. 따라서 이러한 작업은 단일 작업으로 통합될 수 없습니다.
Pong을 시작해야 한다고 가정해 보겠습니다. Ping 후 스케줄러 작업 작업이 완료되었습니다. 작업이 시작되거나 완료되면 이 이벤트에 대한 정보가 시스템 로그에 등록됩니다. Ping 작업 완료 이벤트에 중점을 둘 것입니다.
작업 열기 스케줄러 콘솔(Taskschd.msc ), Ping 이벤트를 찾아 선택하고 하단 패널에서 기록으로 이동합니다. 이 작업과 관련된 모든 이벤트에 대한 정보가 포함된 탭입니다. 이벤트 ID가 102인 이벤트가 필요합니다. (Task Completed) 작업이 완료된 후 생성됩니다.
세부정보로 이동하여 자세한 이벤트 설명을 엽니다. 탭을 클릭하고 XML 보기를 활성화합니다. 이벤트의. XML 데이터에 따르면 필터를 만드는 데 필요한 이벤트의 모든 세부 정보를 얻을 수 있습니다. 특히 다음이 필요합니다.
이벤트 ID :102제공자 이름 :Microsoft-Windows-TaskScheduler
채널 :Microsoft-Windows-TaskScheduler/Operational
TaskName :\핑
Pong 작업에 대한 트리거를 생성할 때 ID가 102인 이벤트가 로그에 나타날 때 작업이 시작되도록 트리거 조건을 생성해야 합니다(작업 트리거 이벤트 발생 ). 그러나 문제는 Ping 작업뿐만 아니라 모든 작업이 완료된 후에 EventID 102가 표시된다는 것입니다.
그러나 이벤트 선택을 위해 보다 유연한 조건(Custom ) 표준 필터가 이벤트를 정확하게 선택하는 데 도움이 되지 않는 경우. 새 이벤트 필터를 클릭하십시오. :
이벤트의 XML 보기에서 데이터를 지정하여 새 이벤트 필터를 만듭니다.
이벤트 로그 :Microsoft-Windows-TaskScheduler/운영이벤트 소스 :작업 스케줄러
작업 카테고리 :작업 완료
그런 다음 XML 탭에서 다음 필터 보기(XPath ):
<QueryList>
<Query Id="0" Path="Microsoft-Windows-TaskScheduler/Operational">
<Select Path="Microsoft-Windows-TaskScheduler/Operational">*[System[Provider[@Name='Microsoft-Windows-TaskScheduler'] and Task = 102]]</Select>
</Query>
</QueryList>
XPath 코드를 다음 코드로 변경하면 로그를 필터링하고 \ping 작업에 대한 TaskCompleted 이벤트를 검색합니다.
<QueryList>
<Query Id="0" Path="Microsoft-Windows-TaskScheduler/Operational">
<Select Path="Microsoft-Windows-TaskScheduler/Operational">*[System[Provider[@Name='Microsoft-Windows-TaskScheduler'] and Task = 102]]</Select>
</Query>
</QueryList>
이벤트가 추가된 후 ping 작업을 시작하십시오. 퐁 작업이 완료되면 즉시 시작해야 합니다.
XPath 설명은 아래에 표시됩니다.