0
我想使用變量來構建一個Get-Winevent命令,但我遇到了「內置」命令中的變量問題,並且我碰到了衆所周知的磚牆。在最後一段代碼中,如果我刪除$ EventIDQueryAdd和$ EntryTypeQueryAdd,那麼該命令將毫無問題地運行。任何援助將不勝感激!謝謝!Powershell變量/表達式的問題
$ArgLastMinutes = 60
$ArgLogName = "Security"
$ArgEntryType = 0
$ArgEventID = 4625
if ($ArgEventID) { $EventIDQueryAdd="id=$ArgEventID;" }
if ($ArgEntryType) { $EntryTypeQueryAdd="level=$ArgEntryType;" }
write-host "argeventid "$ArgEventID # returns 4625
write-host "argentrytype "$ArgEntryType # returns 1
write-host "eventidqueryadd "$EventIDQueryAdd # returns id=4625; as it should
write-host "entrytypequeryadd "$EntryTypeQueryAdd # returns level=1; as it should
$LogEntries=Get-WinEvent -FilterHashtable @{logname="$ArgLogName"; $EventIDQueryAdd $EntryTypeQueryAdd StartTime=(Get-Date).AddMinutes(-$ArgLastMinutes) }
... Loop through LogEntries ...