Powershell Remove-Item不会删除所有项目

时间:2013-12-17 17:25:07

标签: powershell powershell-ise

我有一个Powershell脚本,应该删除X天以前的项目。它没有完全奏效。它删除了一些文件,但没有删除所有文件。当我在没有| Remove-Item -Force的情况下运行脚本时,将显示满足要求的所有文件。所以,我知道where语句有效。

为什么Remove-Item -Force没有删除符合要求的所有项目where语句,以及如何修复?

$deleteFiles = Get-Childitem $fullTargetPath -Recurse
| Where {$_.LastWriteTime -lt (Get-Date).AddDays(-10)} | Remove-Item -Force

1 个答案:

答案 0 :(得分:1)

在“删除项目”之前添加“Foreach”。

例如:

$deleteFiles = Get-Childitem $fullTargetPath -Recurse | 
    Where {$_.LastWriteTime -lt (Get-Date).AddDays(-10)} | 
    Foreach { Remove-Item $_.FullName -Force}