如何记录在 powershell 窗口中写入的所有内容?

Joh*_*ing 2 powershell logging warnings verbose

我需要为此脚本执行的每个操作创建一个日志文件。

我尝试使用重定向(>>),但是无法将输出实际写入文件。

while($true){

$FromMC = Get-ChildItem -Path "\\x\From MC" -Filter *.mpg
Write-Host "Checking '\\x\From MC' for files" -ForegroundColor Cyan
Write-Host $FromMC.count"Files Found" -ForegroundColor Cyan
Write-Host ""
ForEach($file in $FromMC){

    try{
        Move-Item -Filter 7ST* -Path $file.Fullname -Destination "\\x\programs\7TH STREET THEATER" -Verbose -Force -ErrorAction Stop
    }
    catch{...}
Write-Host "Pausing for"$ts.Minutes"minutes..." -ForegroundColor Cyan
Write-Host "Ctrl+C to Stop"
Write-Host ""
Start-Sleep -Seconds $ts.TotalSeconds
}
Run Code Online (Sandbox Code Playgroud)

我希望输出与 shell 中的“-verbose”输出完全相同。输出类型:写主机、详细、写警告

我觉得解决方案非常简单,我只是忽略了它。

jri*_*der 5

记录通常写入控制台的所有内容,例如-verbose您可以使用Start-Transcript和 当您完成时Stop-Transcript

例子:

Start-Transcript -Path "C:\logs.txt"

#run code you want to capture

Stop-Transcript
Run Code Online (Sandbox Code Playgroud)