![]() |
Не пишется лог-файл по forfiles. Ищу помощи и совета.
Здравствуйте.
Прошу помощи и совета. Нашел решение для удаление старых файлов и подпапок Одно из, вроде работает 0=) Код:
@ECHO OFF Но не пишет в лог что удалено. Пожалуйста помогите правкой скрипта, чтоб писал в лог. Заранее большое спасибо! PS Отброшенный вариант: Пишет в лог на удаление файлов, НЕ пишет в лог удаленные папки. ГЛАВНОЕ НО: после удаления файлов, дата папки (из которой удалены файлы) меняется на текущую и 2я строка уже не может удалить саму папку Код:
forfiles /p "%BKUP_DelPath%" /s /m * /D -%BKUP_Max_Days% /C "cmd /c del /q /s @path" >> e:\Deleted.log |
blacks2, Вы удаляете старые файлы в папке. А зачем Вы удаляете саму папку? Вы предполагаете, что после удаления старых файлов она пустая? Тогда просто удалите эту папку командой RD ИМЯ-ПАПКИ без ключей без привязки к дате. Непустая папка не удалится. Как удалить пустые папки, на форуме не раз обсуждалось.
С лог-файлом
Код:
FOR /F "usebackq delims=" %%d IN (`2^>nul Dir "%BKUP_DelPath%" /S /B /A:D ^|Sort /R`) DO 2>nul Rd "%%d"&&>>"e:\Deleted.log" Echo "%%d" |
Цитата:
... даже не подумал. Благодарю Вас megaloman PS Лог: Ваш пример Код:
FOR /F "usebackq delims=" %%d IN (`2^>nul Dir "%BKUP_DelPath%" /S /B /A:D ^|Sort /R`) DO 2>nul Rd "%%d" Код:
For /F "usebackq delims=" %%A In (`Dir "%BKUP_DelPath%" /B /S /A:D 2^>nul^|Sort /R`) Do RD "%%A" 2>nul &&Echo:Папка %%A удаленa Пробовал добавлять/заменять (знания по CMD не большие) >> е:\Deleted.log - не получилось, видимое что-то делаю не так. Если есть возможность, подскажите пожалуйста как сделать вывод результата в лог? |
Цитата:
А спойлер то и не заметил вначале. Ссылки смотрел а спойлер проглядел :cool: P.S. Итог (если кому-то понадобиться): Скрытый текст
Код:
SET BKUP_DelPath=e:\backup_dir |
Время: 23:37. |
Время: 23:37.
© OSzone.net 2001-