Готовые рецепты – Удаление старых файлов

Дата выхода: 26 июля 2023 г.

Редактировался: 1 августа 2023 г.

Это продолжение рубрики "Готовые рецепты", в этой короткой статье мне хотелось бы показать скрипт для удаления лишних файлов.

Часто системным администраторам нужно думать об удалении лишнего мусора с жёстких дисков серверов, cache, большое количество логов от программ или ОС, всё это регулярно нужно чистить, собственно вот скрипт:

# Создаём переменную с путём до папки с cache-ем или логами
$TargetFolder = "C:\ProgramData\Program\Cache" 
# Создаём переменную с количество дней хранения файла (и да значение должно быть отрицательным)
$Period = "-10" 

# Вычисляем дату после которой будем удалять файлы.
$ChDaysDel = (Get-Date).AddDays($Period)
 
# Удаление файлов, дата создания которых больше заданного количества дней
GCI -Path $TargetFolder -Recurse | Where-Object {$_.CreationTime -LT $ChDaysDel} | RI -Recurse -Force

Этот скрипт удобен тем, что мы можем выбрать срок хранения файлов в переменной $Period, в примере выше это 10, то есть если файл существует дольше 10 дней то тогда он будет удалён. Ну и конечно для регулярного удаления нужно использовать планировщик задач (Scheduler), который будет регулярно запускать скрипт.

 

microsoft автоматизация рецепты