递归删除早于X天

时间:2016-11-10 14:44:54

标签: powershell powershell-v2.0

我的目录中包含大约12k个文件夹,里面有多个子文件夹。

我试图删除超过定义天数的所有空文件夹,但事情不是删除文件夹(最后写入时间与限制匹配),其中有更年轻的"子文件夹里面。

使用其中一个(很多找到的),例子(我修改了一下),我非常接近,但不幸的是它也摆脱了准备好的文件夹(我在test文件夹中创建文件以检查它是否会被删除)。

它似乎并没有真正遍历所有子文件夹。

这是代码:

$limit = (Get-Date).AddDays(-180)
$path = "path"

Get-ChildItem -Path $path -Recurse -Force | Where-Object {
  ($_.PSIsContainer -and $_.LastWriteTime -lt $limit) -and
  (Get-ChildItem -Path $_.FullName -Recurse -Force | Where-Object {
    !$_.PSIsContainer
  }) -eq $null
} | Remove-Item -Force -Recurse

我有什么想法吗?

0 个答案:

没有答案