从昨天获取活动

时间:2017-01-26 14:08:39

标签: powershell event-log taskscheduler

我试图使用PowerShell从昨天开始从TaskScheduler事件中获取结果。这是我的代码:

Get-WinEvent -LogName Microsoft-Windows-TaskScheduler/Operational  -MaxEvents 5 |
    Where-Object ($_.TimeCreated -gt [DateTime]::Today.AddDays(-1))
Format-List *

注意:

  1. -MaxEvents 5是在我开发时限制输出。

  2. 当我删除Where-object时,cmdlet会返回完整列表。这是预期的,因为不应用过滤。因此,错误必须与过滤的方式相同。

1 个答案:

答案 0 :(得分:1)

您可以使用FilterHashTable Get-WinEvent属性进行过滤,它会比检索所有事件更快,然后只过滤您想要的事件。

这将从系统日志中检索最后一天的所有事件,因为我没有任何TaskScheduler的日志记录。

$date = (Get-Date).AddDays(-1)
$events = Get-WinEvent -FilterHashTable @{ LogName = "System"; StartTime = $date;}
$events | Format-List

您可以过滤事件日志中的几乎任何字段 - further info on this