Powershell删除了更多文件,不是吗?

时间:2018-11-01 16:49:48

标签: windows powershell scripting

我在Powershell脚本中使用以下代码片段来清理不再需要的文件,但这似乎删除了所有内容(感谢上帝的备份...),而不仅仅是删除了早于$ limit的文件,谁能解释这种行为?

param (
    [int]$daystokeep = 548 # default to 18 months 
)

$limit = (Get-Date).AddDays(-1 * $daystokeep) # 18 months

Get-ChildItem -Path $path -Recurse -Force | Where-Object { !$_.PSIsContainer -and $_.ModifyTime -lt $limit } | Remove-Item -Force

1 个答案:

答案 0 :(得分:4)

FileInfo对象没有ModifyTime属性,因此您的比较结果基本上是:

$null -lt $limit

始终为$true

将属性名称更改为LastWriteTime

$_.LastWriteTime -lt $limit