我想只删除特定文件夹中超过5分钟前创建的文件(* .txt)。我试过这样的东西,但它删除了所有* .txt文件,没有例外。
$limit = (Get-Date).AddMinutes(-5)
$path = "C:\Users\akoch\Desktop\Folder1"
$Extension = "*.txt"
Get-ChildItem -Path $path -Include $Extension -Force | Where-Object {$_.CreationTime -lt $limit} | Remove-Item
答案 0 :(得分:4)
使用-filter代替-include
$limit = (Get-Date).AddMinutes(-5)
$path = "C:\Users\akoch\Desktop\Folder1"
$Extension = "*.txt"
Get-ChildItem -Path $path -Filter $Extension -Force | Where-Object {$_.CreationTime -lt $limit} | Remove-Item
这里的问题是你实际上没有过滤任何东西