"forfiles" неправильно определяет дату изменения
Вложений: 1
Win Server 2008 SP2
На сервере есть приложение dsc.exe, которое инкрементно пишет свои логи. Это значит, что лог файл можно удалить, приложение не "держит" его. Но если его удалить, то следующая запись в логе не появится, потому что приложение найти лог файл не сможет. Каждое воскресенье, шедулер перезагружает сервер в 10:00. После перезагрузки, приложение стартует автоматически. Хочу раз в неделю, копировать логи, которые были изменены последний раз приложением dsc.exe неделю назад и ранее. строка для выполнения Код:
forfiles /D -7 /C "cmd /c copy @path d:\archive\" Но почему-то, каждый раз в скопированных файлах я вижу файлы, которые были изменены в тот же день, чего быть не должно. Проверяю командой ниже, иногда попадают проблемные логи, иногда нет. Закономерности я так и не нашел. Код:
forfiles /D -7 /C "cmd /c echo @fdate @path" вот, к примеру, что в этом логе: Код:
... вопрос: почему этот лог попадает в копирование? |
Логи писать нада. Писать как минимум дату изменения файла в лог и смотреть что с ней не так.
|
вот что следует из логов
Код:
pushd d:\tm\logs Время последнего запуска В тестовую папку было скопировано 2 файла Хотя в файле d:\tm\logs\archive\1\1.txt такого файла нет (самая ранняя/поздняя запись Sun 11/13/2016 12:05:11.13) И в самой папке для последующего архивирования его нет в самом файле DSC_pid2924.log (это ведь лог приложения) записи от разных дат (т.е. по сути он не должен был "браться" копированием) Код:
... в 12:00 джоб запустился на копирование/архивирование |
Время: 12:13. |
Время: 12:13.
© OSzone.net 2001-