[英]PowerShell WinEvent FilterHashtable wildcard
这是我第一次在PowerShell
工作。 我正在尝试仅基于日期过滤事件。
根据文档, Logname
和Providername
接受通配符。
如何通配符Logname
? 我试过 *, ** 但它似乎确实有效。
Get-WinEvent -FilterHashtable @{Logname=*; StartTime=$startTime; EndTime=$endTime}
我不认为你可以。 这是我解决它的方法。 您甚至不能在事件查看器中执行此操作,即在特定时间内来自所有日志的事件。 日志名的数量有一个旧的 windows api 限制。 powershell 7 中的 Foreach-object -parallel 更快。
Get-WinEvent -ListLog * -EA silentlycontinue |
foreach-object { get-winevent -filterhashtable @{logname=$_.logname;
starttime='1:55 pm'; endtime='1:58 pm'} -ea 0 }
# powershell 7
get-winevent -LogName *
Get-WinEvent: Log count (458) is exceeded Windows Event Log API limit (256).
Adjust filter to return less log names.
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.