所以我在下面的代码中使用append来收集声明的EventID。问题是它只保存到一个文件。我想要做的是将收集的数据保存到一个每日文件中,这样我就可以做一个每日报告。请帮个忙好吗?
$endtime = Get-Date
$starttime = (Get-Date).AddHours(-3)
$domain = "ComputerName"
$event = get-eventlog security -ComputerName $domain -after $starttime -before $endtime | where-object {($_.EventID -eq 4724) -or ($_.EventID -eq 4723) -or ($_.EventID -eq 4720)}
$event | select MachineName,EventID,TimeGenerated,Message | export-csv -path "E:\EventLogs\temp.csv"
get-content "E:\EventLogs\temp.csv" | out-File -filepath "E:\EventLogs\AccountAudit.csv" -append -enc ASCII -width 500发布于 2016-11-21 19:28:31
Export-Csv也有一个-Append参数,你可以缩短你的代码来:
$event = get-eventlog security -ComputerName $domain -after $starttime -before $endtime |
Where-object {($_.EventID -eq 4724) -or ($_.EventID -eq 4723) -or ($_.EventID -eq 4720)}
$event | select MachineName,EventID,TimeGenerated,Message |
Export-Csv -path "E:\EventLogs\AccountAudit.csv" -Append -Encoding ASCII 发布于 2016-11-21 13:43:54
只需添加一个带有一些参数的get-start,即可获得文件名友好的日期(例如,没有"/“),并将其保存在一个变量中。然后用变量替换最后一行上的AccountAudit。
https://stackoverflow.com/questions/40711575
复制相似问题