Назад | Перейти на главную страницу

Используя 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....

Любая помощь будет оценена.

Я бы, наверное, просто использовал 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)