Здравствуйте ещё раз все !
Прошу прощения - были форс мажорные обстоятельства ...
![Sorry](images/smilies/new/sorry.gif)
Не до скриптов было
С батником, увы, так и не заработало
Итак: Действительно вот такой вариант РАБОТАЕТ !!! Удаляет файлы через n-дней только ПО ВРЕМЕНИ СОЗДАНИЯ в данной директории, не обращая внимания на дату изменения.
Код:
![Выделить весь код](images/misc/selectcode.png)
$Now = Get-Date
$Days = "10"
$TargetFolder = "\\srv-zavod\Obmen\"
$Extension = "*"
$LastWrite = $Now.AddDays(-$Days)
$Files = Get-Childitem $TargetFolder -Include $Extension -Recurse | Where{$_.CreationTime -le "$LastWrite" -and $_.LastWriteTime -le "$LastWrite"} | Sort-Object -Descending {$_.FullName.Split('\').Count},FullName
foreach ($File in $Files)
{
if ($File -ne $NULL -and !$File.PSIsContainer)
{
write-host "Deleting File $File" -ForegroundColor "Magenta"
Remove-Item $File.FullName -Force | out-null
}
elseif ($File -ne $NULL -and $File.PSIsContainer)
{
$FolderInfo = get-Childitem $File.FullName | Measure-Object
if ($folderInfo.count -eq 0)
{
write-host "Deleting directory - $File" -foregroundcolor "green"
Remove-Item $File.FullName -Force | out-null
}
}
else
{
Write-Host "No more files to delete!" -foregroundcolor "Green"
}
}
Теперь остался ,надеюсь, последний вопрос: Какие строки добавить в этот .ps1 и куда, чтобы НЕ УДАЛЯЛИСЬ ИМЕННО СОЗДАННЫЕ ПАПКИ (чтобы сотрудникам заново не приходилось их создавать) или ПРОПИСЫВАТЬ ПАПКИ-ИСКЛЮЧЕНИЯ (что менее удобно)
Заранее благодарю за отзывчивость
P.S.
Вот бы лог куда-нить бы сливался ещё по удаленным файлам ...