$Exclude = @("Folder_1","Folder-2","~snapshot")
$path = "\\\Server\Test"
$limit = (Get-Date).AddDays(-30)
$Files = Get-ChildItem -Path $PATH -Recurse -Force |
Where-Object {!$_.PSIsContainer -and $_.LastWriteTime -lt $limit} |
Remove-Item -Force
我正在尝试删除30天以前的所有文件,但该路径中定义为$Exclude
的文件夹除外。
执行此代码时遇到2个问题:
Remove-Item
无法删除长度超过248个字符的文件。答案 0 :(得分:0)
mkdir C:\delete
robocopy "\\Server\Test" "c:\Delete" /E /MOVE /MINLAD:30 /LOG:"C:\temp\DeleteOldFiles.txt" /XD "This folder will not be deleted" /FAT
rmdir c:\delete /s /q
这就是我解决这个问题的方法。这个测试和工作!