我想在PowerShell中写一些东西,并且对于PowerShell来说是全新的,我需要帮助。我想要做的是从安全日志中获取信息。具体来说,是过去两周内用户的最后一次登录。我目前使用的代码是根据最近的100个事件获取事件ID 4624的登录名。这也不仅仅是用户,还包括计算机。我如何在两周内将结果限制在用户身上?这甚至有可能吗?Powershell安全日志Get-EventLog
$eventList = @()
Get-EventLog "Security" -After $Date `
| Where -FilterScript {$_.EventID -eq 4624 -and $_.ReplacementStrings[4].Length -gt 10} `
| foreach-Object {
$row = "" | Select UserName, LoginTime
$row.UserName = $_.ReplacementStrings[5]
$row.LoginTime = $_.TimeGenerated
$eventList += $row
}
$eventList
编辑:用代码
$Date = [DateTime]::Now.AddDays(-14)
$Date.tostring("MM-dd-yyyy"), $env:Computername
$eventList = @()
Get-EventLog "Security" -After $Date `
| Where -FilterScript {$_.EventID -eq 4624 -and $_.ReplacementStrings[4].Length -gt 10 -and $_.ReplacementStrings[5] -notlike "*$"} `
| foreach-Object {
$row = "" | Select UserName, LoginTime
$row.UserName = $_.ReplacementStrings[5]
$row.LoginTime = $_.TimeGenerated
$eventList += $row
}
$eventList
感谢您阅读-after部分,稍作工作,我已经运行了,检查完成脚本的代码。 – 2011-02-18 06:31:50