Powershell Out File写入一个空文件

Powershell Out File写入一个空文件,powershell,powershell-2.0,Powershell,Powershell 2.0,我在PowerShell v2上的系统上 我有一个删除旧备份文件的脚本。我想保存脚本的结果,因为我在屏幕上看到它将被写入一个文件,这样我就可以查看删除的所有文件 我读到屏幕上看到的写主机输出无法重定向到文件,因此我也尝试使用写输出,但可以得到写入文件的结果。该文件已创建,但为空 我在这里做错了什么 代码如下: $Stamp1 = Get-Date -Format "MMddyyyy_hhmmss" $File= "E:\SSBackups\PS_Delete_Script_logs\Delete

我在PowerShell v2上的系统上

我有一个删除旧备份文件的脚本。我想保存脚本的结果,因为我在屏幕上看到它将被写入一个文件,这样我就可以查看删除的所有文件

我读到屏幕上看到的写主机输出无法重定向到文件,因此我也尝试使用写输出,但可以得到写入文件的结果。该文件已创建,但为空

我在这里做错了什么

代码如下:

$Stamp1 = Get-Date -Format "MMddyyyy_hhmmss"
$File= "E:\SSBackups\PS_Delete_Script_logs\Delete_Backup_Results_$Stamp1.txt"
$ReadFile = Get-Content C:\Users\MSA050415\Desktop\List.txt
foreach ($Folder in $ReadFile) {
    #Write-Host "Folder currently being worked on: $Folder" -ForegroundColor Magenta
    Write-Output "Folder currently being worked on: $Folder"
    $Path ="E:\SSBackups\Database_Backups\$Folder"
    #Write-Host "The Path is set to $Path" -ForegroundColor Green
    Write-Output "The Path is set to $Path"
    Get-ChildItem $Path |
        Where-Object {$_.LastWriteTime -lt "4/17/2018 12:15:00 AM"} |
        Remove-Item -Verbose |
        Out-File $File
}

详细输出写入,无法在PowerShell v2中重定向。该功能已添加到PowerShell v3中

您应该能够记录成绩单,但是:

Start-Transcript $File -Append
Get-ChildItem $Path |
    Where-Object {$_.LastWriteTime -lt "4/17/2018 12:15:00 AM"} |
    Remove-Item -Verbose
Stop-Transcript

非常感谢你!!!这起作用了。这是因为我在这台机器上安装了V2.0,这使得事情变得非常过时。因此,如果不使用-VERBOSE,我可以使用Out File吗?@Amir,它会将常规输出写入输出文件,但如果没有-VERBOSE参数,Remove Item将不会显示它首先要删除的内容的信息,因此输出文件仍然是空的。@Ansgar Wiechers谢谢您,先生!有道理。我正在努力学习这一点,以便有一天我想回答别人的问题,帮助别人。它会感觉很好!!!