我正在使用Powershell报告计划任务状态。
由于在Windows Server 2008R2上不得不在此实例中使用powershell 2.0,因此我无法使用get-scheduled任务cmdlet,因此我使用的是以下代码:
$sched = New-Object -Com "Schedule.Service"
$sched.Connect()
$out = @()
$sched.GetFolder("\").GetTasks(0) | % {
$xml = [xml]$_.xml
$out += New-Object psobject -Property @{
"Name" = $_.Name
"Status" = switch($_.State) {0 {"Unknown"} 1 {"Disabled"} 2 {"Queued"} 3 {"Ready"} 4 {"Running"}}
"NextRunTime" = $_.NextRunTime
"LastRunTime" = $_.LastRunTime
"LastRunResult" = $_.LastTaskResult
"Author" = $xml.Task.Principals.Principal.UserId
"Created" = $xml.Task.RegistrationInfo.Date
}
}
## pipe results to screen
$out | fl Name,Status,NextRuNTime,LastRunTime,LastRunResult,Author,Created
然后我在导入和发送电子邮件之前导出到csv。
问题是该脚本还包括我用来运行此powershell命令的计划任务。
是否可以使用schedule.service并在输出中仅包含特定的命名计划任务,而不是所有计划任务?在这种情况下,我希望输出的唯一任务称为“Axway”。 感谢