我尝试了很多实验,但是无法解决这个问题。
动机:PS脚本选择性地解析我将输入的EVTX并仅过滤我想要的事件ID。
Get-WinEvent -Path [EVTX]但我根本无法使用-FilterHashTable!
我想到了-
$events = @(7045,4624)
get-eventlog -logname system -entrytype error | select eventid, message| where-
object {$events -notcontains $_.eventid}
但是如何输入EVTX并输出干净的CSV或写入控制台?
编辑2月13日-
非常感谢你们!我对StackOverflow还是很陌生,但我在这里仍然得到了很多积极的帮助,我深感荣幸。 :)
所以我已经取得了进步-
Get-WinEvent -FilterHashtable @ {Path ='C:\ TestEvent \ SystemVictim.evtx','C:\ TestEvent \ Security.evtx'; Id ='7045','7031','4624','4625','42'} | where-object {$ _。Message -like' SomeProcessName '} |网格外
我试图获得7045的合并事件-正在注册服务以及来自4624、4625的所有数据,依此类推。
答案 0 :(得分:-1)
这适用于-FilterHashTable:
Get-WinEvent -FilterHashtable @{LogName = 'System'; Id = '7045','4624'}
这适用于使用-FilterHashTable导出的.evtx文件:
Get-WinEvent -FilterHashtable @{Path = 'c:\temp\system.evtx'; Id = '7045','4624'}
请参见示例,并提供here
的-FilterHashTable参数描述。