Будьте осторожны при удалении папок профиля пользователя, поэтому держите переключатель -WhatIf
до тех пор, пока вы не будете абсолютно уверены, ниже не удалит папки, которые не должны быть удалены.
Это может бытьхорошая идея Move
этих папок вместо их удаления?
Так как это касается папки профиля пользователя, где каждый пользователь имеет свою собственную папку прямо под корневой папкой, * 1009 не требуется* включите Get-ChildItem
Во всяком случае, это должно сделать это:
$source = "D:\TestOrdner"
$time = (Get-Date).AddDays(-7)
Start-Transcript "C:\log_files\log.txt"
Get-ChildItem $source -Directory -Exclude 'Administrator','Default','Public' |
Where-Object {$_.LastWriteTime -lt $time} |
Remove-Item -Recurse -Force -confirm:$false -WhatIf
Stop-Transcript