Удалить папки с длинными именами старше 7 дней - PullRequest
1 голос
/ 13 мая 2019

Мне нужно сделать скрипт, который будет удалять папки и файлы (все вещи), но только старше 7 дней. У меня есть код, но он имеет проблему, когда имя пути длиннее 256 символов. Один из пользователей имеет много папок, длина имени которых равна 303 символам. Приведенный ниже код работает в Windows 10, но имеет проблемы в Windows 2008R2 (.net 4.7.2) с \\?\....

Get-ChildItem -Path '\\?\c:\test\users' | ?{ $_.CreationTime -le $(Get-Date).AddDays(-7) } | Remove-Item -recurse -force

И это имеет проблему с длинным именем пути:

Get-ChildItem D:\foler\folder\file | ?{ $_.CreationTime -le $(Get-Date).AddDays(-7) } | Remove-Item -Force -Recurse Get-ChildItem D:\foler\folder\file | ?{ $_.CreationTime -le $(Get-Date).AddDays(-7) } | Remove-Item -Force -Recurse

Также я пытаюсь с Робокопией. Так что подойдет любой скрипт на powershell, .bat или .vbs.

...