有没有使用 Powershell 方法将 evt 转换为 csv 的方法?

有没有使用 Powershell 方法将 evt 转换为 csv 的方法?

我有许多来自旧版操作系统的日志文件需要转换为 csv。有没有办法使用 Powershell 来做到这一点?

答案1

你可以试试Get-WinEvent

Get-WinEvent -Path C:\somewhere\foo.evt | Export-CSV C:\somewhere\foo.csv

如果您想在 Excel 中查看 CSV,我会将其添加-delimiter ';'到其中Export-CSV以提高可读性。

这适用于.evt.evtx.etl文件扩展名。您可以在同一命令中包含不同的文件和文件类型(-Path接受文件路径数组)。

答案2

更简单的方法是

$logparser = "c:\program files (x86)\Log Parser 2.2\logparser.exe"
$query = "SELECT * INTO c:\logs\sample.csv FROM c:\logs\sample.evtx"

& $logparser -i:evt -o:csv $query

相关内容