我是PowerShell脚本的新手。我试图用文件名中的日期和时间覆盖现有文件。
这是我正在使用的。
$LogName = "Security"
$EventID = 4725
$Date = ((get-date).addDays(-1))
$CurrentDate = Get-Date
$CurrentDate = $CurrentDate.ToString('MM-dd-yyyy_hh.mm.ss')
get-eventlog $LogName $EventID -after $Date | Export-CSV $Path -notypeinformation | Out-File -Filepath $Path -Append
然而,在运行时,它会返回错误,表示
Out-File:进程无法访问该文件,因为它正由另一个进程使用
我希望你们可以帮助我。谢谢!
答案 0 :(得分:0)
尝试使用ConvertTo-Csv
而不是Export-CSV
。
Get-EventLog $LogName $EventID -after $Date | ConvertTo-Csv -NoTypeInformation | Out-File -Filepath $Path -Append
错误归结于您尝试同时读取和写入文件($ path)。
这将在您追加到同一文件之前停止Export-CSV
创建文件,从而消除错误。