如何记录在 powershell window 中编写的所有内容?

How can I log everything that is written in powershell window?

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

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

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\programsTH 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
}

我希望输出与 shell 中的“-verbose”输出完全相同。输出类型:Write-Host、Verbose、Write-Warning

我觉得解决方法很简单,就忽略了。

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

示例:

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

#run code you want to capture

Stop-Transcript