使用Get-WinEvent记录多台计算机的日志

时间:2016-09-20 06:23:51

标签: powershell event-log get-winevent

从下面的代码行开始,有没有办法调用.txt文件以查看计算机列表?我希望它不仅可以从一台计算机中查找日志,还可以从计算机列表中查找日志。

$StartDate = (get-date).AddHours(-12)
Get-WinEvent -FilterHashtable @{logname="System"; Level=1,2,3; starttime=$StartDate} -ErrorAction SilentlyContinue

希望很快收到你的来信!感谢。

1 个答案:

答案 0 :(得分:1)

由于-ComputerName cmdlet的Get-WinEvent参数只接受字符串,因此您可能必须遍历列表:

$StartDate = (get-date).AddHours(-12)

Get-Content 'computers.txt' | ForEach-Object {
    Get-WinEvent -ComputerName $_ -FilterHashtable @{logname="System"; Level=1,2,3; starttime=$StartDate} -ErrorAction SilentlyContinue    
}