blacks2
28-10-2020, 08:30
Здравствуйте.
Прошу помощи и совета.
Нашел решение для удаление старых файлов и подпапок
Одно из, вроде работает 0=)
@ECHO OFF
chcp 866
SET BKUP_DelPath=e:\backup
SET BKUP_Max_Days=7
forfiles /S /P "%BKUP_DelPath%" /M *_base /D -%BKUP_Max_Days% /C "cmd /C if @isdir == TRUE (rd /S /Q @path) else (del /F /A @path)" >> "e:\Deleted.log"
echo pause
PAUSE >nul
Но не пишет в лог что удалено.
Пожалуйста помогите правкой скрипта, чтоб писал в лог.
Заранее большое спасибо!
PS
Отброшенный вариант:
Пишет в лог на удаление файлов,
НЕ пишет в лог удаленные папки.
ГЛАВНОЕ НО: после удаления файлов,
дата папки (из которой удалены файлы) меняется на текущую
и 2я строка уже не может удалить саму папку
forfiles /p "%BKUP_DelPath%" /s /m * /D -%BKUP_Max_Days% /C "cmd /c del /q /s @path" >> e:\Deleted.log
forfiles /p %BKUP_DelPath% /m *_base /D -%BKUP_Max_Days% /C "cmd /c IF @isdir == TRUE rd /S /Q @path" >> e:\Deleted.log
Прошу помощи и совета.
Нашел решение для удаление старых файлов и подпапок
Одно из, вроде работает 0=)
@ECHO OFF
chcp 866
SET BKUP_DelPath=e:\backup
SET BKUP_Max_Days=7
forfiles /S /P "%BKUP_DelPath%" /M *_base /D -%BKUP_Max_Days% /C "cmd /C if @isdir == TRUE (rd /S /Q @path) else (del /F /A @path)" >> "e:\Deleted.log"
echo pause
PAUSE >nul
Но не пишет в лог что удалено.
Пожалуйста помогите правкой скрипта, чтоб писал в лог.
Заранее большое спасибо!
PS
Отброшенный вариант:
Пишет в лог на удаление файлов,
НЕ пишет в лог удаленные папки.
ГЛАВНОЕ НО: после удаления файлов,
дата папки (из которой удалены файлы) меняется на текущую
и 2я строка уже не может удалить саму папку
forfiles /p "%BKUP_DelPath%" /s /m * /D -%BKUP_Max_Days% /C "cmd /c del /q /s @path" >> e:\Deleted.log
forfiles /p %BKUP_DelPath% /m *_base /D -%BKUP_Max_Days% /C "cmd /c IF @isdir == TRUE rd /S /Q @path" >> e:\Deleted.log