0

我正在尝试根据今天的日期通过 PowerShell 从事件日志中提取一些信息。

到目前为止,我有以下代码:

$today = (Get-Date).ToString("dd/MM/yyyy")
Get-EventLog Security | where {$_.EventID -eq 4624} | where {$_.TimeGenerated -eq $today}

现在我打印了今天的结果,可以确认输出的日期是 04/12/2017,我还打印了TimeGeneratedEventID 对象中属性的日期,并且还以相同的格式显示了日期。

关于我哪里出错的任何想法?

4

1 回答 1

1

TimeGenerated属性包含一个DateTime值,而不是字符串,因此不要将其与日期字符串进行比较。此外,您应该Get-EventLog尽可能通过参数进行过滤,因为该过滤发生在源头。这在查询远程事件日志以减少通过网络传输的数据量时尤其重要。

$today    = (Get-Date).Date
$tomorrow = $today.AddDays(1)

Get-EventLog -LogName Security -InstanceId 4626 -After $today -Before $tomorrow
于 2017-12-04T11:06:38.143 回答