我需要一个powershell脚本来监视运行超过X分钟的windows日程安排任务

我需要一个powershell脚本来监视运行超过X分钟的windows日程安排任务,windows,powershell,scheduled-tasks,powershell-2.0,system-monitoring,Windows,Powershell,Scheduled Tasks,Powershell 2.0,System Monitoring,我在windows 2003服务器上运行了几个windows计划任务,其中一个任务由于某种原因被挂起,状态保持为“正在运行”。。我要找的是一些基本的脚本“获取服务器XXXXXX上运行超过XX分钟的所有作业的列表。” 有什么帮助吗?试试这个: $servername = "localhost" $schedule = new-object -com("Schedule.Service") $schedule.connect($servername) $tasks = $schedule.get

我在windows 2003服务器上运行了几个windows计划任务,其中一个任务由于某种原因被挂起,状态保持为“正在运行”。。我要找的是一些基本的脚本“获取服务器XXXXXX上运行超过XX分钟的所有作业的列表。”

有什么帮助吗?

试试这个:

$servername = "localhost"
$schedule = new-object -com("Schedule.Service") 
$schedule.connect($servername) 
$tasks = $schedule.getfolder("\").gettasks(0)
$tasks | Where-Object {$_.State -eq 4} |select name, lastruntime

这将返回所有正在运行的任务及其启动时间

您必须改用schtasks/query。
Win2k3没有Schedule.Service COM对象。它仅是Win2k8\Win7的一部分。

请尝试
$SchedService=new object-ComObject Schedule.Service

谢谢。。。我将尝试并让您知道。我得到以下信息:新对象:无法加载COM类型的Schedule.Service。在第2行char:23+$schedule=new object,我确认我拥有Windows2003R2服务器企业版SP2根据此。。。我有2.0版我只试了那一行,得到了同样的结果。我看到任务计划程序服务已启动。。实际上所有的任务都可以完成。可能是我需要安装或添加到powershell的某个部分?是否有完整源代码的最终解决方案??