使用 Powershell,比较两个事件的 TimeCreated 值,如果其中一个事件比另一个事件更早,则采取行动

使用 Powershell,比较两个事件的 TimeCreated 值,如果其中一个事件比另一个事件更早,则采取行动

我创建了自己的事件日志,名为 ScriptEvents,我使用一些脚本来写入。我想要做的是运行以下命令(或等效命令):

Get-WinEvent -FilterHashtable @{logname='ScriptEvents'; id=1} -MaxEvents 1
Get-WinEvent -FilterHashtable @{logname='ScriptEvents'; id=0} -MaxEvents 1

然后比较它们的 TimeCreated 值,如果第一个事件比第二个事件早,则执行操作。

这是这些命令的输出:

   ProviderName: PauseSnapshots
TimeCreated                     Id LevelDisplayName Message
-----------                     -- ---------------- -------
9/26/2013 11:58:07 AM            1 Information      Replication has been paused....

   ProviderName: ResumeSnapshots
TimeCreated                     Id LevelDisplayName Message
-----------                     -- ---------------- -------
9/26/2013 1:30:42 PM             0 Information      Replication has been resumed....

任何帮助,将不胜感激。

答案1

我可能只会使用Get-Date和比较作为DateTime对象。以下将True使用您提供的值返回。

$evtOne = Get-WinEvent -FilterHashtable @{logname='ScriptEvents'; id=1} -MaxEvents 1
$evtTwo = Get-WinEvent -FilterHashtable @{logname='ScriptEvents'; id=0} -MaxEvents 1
(Get-Date $evtOne.TimeCreated) -lt (Get-Date $evtTwo.TimeCreated)

相关内容