meta data for this page
  •  

Скрипт удаления файлов старше определённого возраста

Этот скрипт удаляет файлы (только файлы, папки не трогает) старше 14 дней, ведёт запись в журнал и не выозвращает ошибку при отсутсвии файлов для удаления.

Написан для использования с Acronis, для резервного копирования конфигурационных файлов сетевого оборудования с локального FTP сервера.

Имя журнала имеет следующий вид, пример: “2022-05-06_1008.log”

В скрипт можно передать переменную, она будет добавлена в журнал выполнения первой строкой, полезно для отслеживания места вывзова скрипта.

rotate.bat
@echo off
 
for /f "tokens=2 delims==" %%I in ('wmic os get localdatetime /format:list') do set datetime=%%I
set datetime=%datetime:~0,4%-%datetime:~4,2%-%datetime:~6,2%_%datetime:~8,4%
set LOGFILE=C:\backuproot\self_service\%datetime%.log
set agr1=%1
call :LOG 1> %LOGFILE% 2>&1
exit /B

:LOG
@echo %agr1%
c:\Windows\System32\forfiles.exe /p "c:\backuproot\self_service" /s /m *.* /D -14 /C "cmd /c del @path"