屬性(System.Collections.Generic.IList)數據我運行這個(1號線是好的,只是第2行,我知道心不是右):Powershell |位置對象從獲取-WinEvent
$specificEvent = Get-WinEvent -FilterHashtable @{"ProviderName"="Microsoft-Windows-Security-Auditing";Id=4648} | select -First 1
$specificEvent | ? {($_).Properties[1] -eq "whatever"}
而且它不是加工。沒有感到驚訝,但有沒有一種真正的方法來獲取System.Collections.Generic.IList類型的屬性數據?
我也可以訪問相同的數據是這樣的:
$specificEvent | % {
([xml]$_.ToXml()).Event.EventData.Data
}
但同樣我不知道我怎麼可以利用的是,在對象。
我也想知道是否有人知道如何(在foreach循環VS處理)的選擇對象中顯示的數據,所以當我終於得到過濾工作,我可以顯示什麼,我需要回去。
對任何願意幫助的人,非常感謝!
UPDATE: 基於下面我能夠工藝這段代碼提供了答案。它不是完美的,但得到了那份工作做得相當不錯
$EventIDs = (Get-WinEvent -FilterHashtable @{
"ProviderName"="Microsoft-Windows-Security-Auditing";
StartTime=(get-date).AddHours(-24);
Id=4625} | select RecordID).RecordID
Foreach ($r in $EventIDs) {
$EvXML = $null
[xml]$EvXML = (Get-WinEvent -LogName "Security" -FilterXPath "*[System[EventRecordID=$($r)]]").ToXML()
$Events = $null
$Events = For ($i=0; $i -lt $EvXML.Event.EventData.Data.Count; $i++) {
New-Object -TypeName psobject -Property (
[ordered]@{Name = $EvXML.Event.EventData.Data[$i].Name
Value = $EvXML.Event.EventData.Data[$i].'#text'}
)
}
write-host ($events | ? {$_.Name -eq "TargetUserName"}).value "|" ($events | ? {$_.Name -eq "TargetDomainName"}).value "|" ($events | ? {$_.Name -eq "IPAddress"}).value ":" ($events | ? {$_.Name -eq "IPPort"}).value
}
你的第一行可能會或可能不會選擇一個事件其中'性能[1] -eq「無所謂」'你希望你的下一個步驟到一定的屬性包含一定的值只作用於事件? – Clayton