Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.97/35: Рейтинг темы: голосов - 35, средняя оценка - 4.97
1 / 1 / 1
Регистрация: 24.08.2015
Сообщений: 5

Архивация логов

24.08.2015, 17:18. Показов 7428. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите сделать bat для добавления в планировщик чтоб чистить логи. Задача:
в указанной директории на 15 серверах (hostname, hostname1, hostname2, hostname3)
Windows Batch file
1
2
3
4
set "in=\\hostname\c$\Program Files (x86)\Kaspersky Lab\Kaspersky Security 8.0 for Microsoft Exchange Servers\logs"
set "out=\\hostname\c$\Program Files (x86)\Kaspersky Lab\Kaspersky Security 8.0 for Microsoft Exchange Servers\logs\7zip_logs"
set "LogFile=%out%\7zip_logs.log"
set "arh=C:\Program Files (x86)\7-Zip\7z.exe"
1. Необходимо архивировать все файлы из %in%, изменение которых старше N дней и сохранять архив в %out% с записью в лог
архивировать командой - тут важны параметры архивации
Windows Batch file
1
"%arh%" a -ssw "%out%\%%~na.7z" -m0=LZMA2:d=96m:fb=128 -mx=9 -mmt=2 "?????имя файла???"
2. удалять заархивированные файлы (полагаю можно с применением параметра -sdel к 7zip) с записью в лог
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.08.2015, 17:18
Ответы с готовыми решениями:

Запись логов
Привет. Есть скрипт: проверка наличия VPN каждые 5 мин. в случае отсутствия оного - (пере)подключение и так по кругу. При этом ведется...

Очистка логов Windows
Можно ли очистить логи Windows через батник ?

Просмотр логов печати.
Здравствуйте, интересует такой вопрос, возможно ли где нибудь проглядеть файлы которые были отправлены на печать с флешки. Тоесть засунул...

7
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
24.08.2015, 23:04
avdross, Слепой глухового да не услышит
Цитата Сообщение от avdross Посмотреть сообщение
чтоб чистить логи
?
Цитата Сообщение от avdross Посмотреть сообщение
изменение которых старше N дней
- изменение по...
Цитата Сообщение от avdross Посмотреть сообщение
удалять заархивированные файлы
- сколько, каких, откуда и за сколько дней или столетий?
0
1 / 1 / 1
Регистрация: 24.08.2015
Сообщений: 5
24.08.2015, 23:22  [ТС]
Уважаемые форумчане, поясняю, в папке с логами (каталог in) в случайном порядке накапливается неопределённое число файлов логов каспера , те файлы которые изменены более чем N дней тому назад (по дате) необходимо заархивировать с указанными выше параметрами архивации и сохранить в каталог out, а оригинальные файлы логов каспера, которые попали в заархивированный файл, необходимо удалить. Файлы заархивированных логов (сжатые логи каспера) необходимо сохранять, и желательно удалять если они старше 30 дней. Соответственно весь этот процесс надо логировать и сохранять в LogFile.
0
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
27.08.2015, 09:45
avdross, Ну что-то похожее, только поменять 3 дня на 30 - разберетесь, надеюсь, и добавить удаление и вывод в лог (не проблема).
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
@echo off
setlocal enabledelayedexpansion
set "qw=%Userprofile%\Desktop\Test"
rem Для изменения у всех файлов даты "модификации" "обращения" [на текущую]
"nircmd" setfiletime "%qw%\*" "" now now
rem Убираем лидирующий "0" из даты, если есть
for /f "tokens=* delims=0" %%d in ("%date%") do (
 set onosdate=%%d
rem Модифицируем дату к виду: "текущая дата-3(дня)"
 for /f "tokens=1-3 delims=.: " %%a in ("!onosdate!") do (
rem У кого английская поменять на %%c%%b%%a
  set sdate=%%a%%b%%c
rem У кого английская %%c%%b
  set dnoa=%%b%%c
  set range=3
  set /a newa=%%a-!range!
rem У кого английская !dnoa!!newa!
  set newsdate=!newa!!dnoa!))
rem Выделяем "дату создания" "имя" и "расширение" файлов (очень важна сортировка по дате и времени, порядок не важен)
for /f "tokens=1-8 delims=.: " %%i in ('dir/a-d/o-d/tc "%qw%"^| findstr/rc:"^[^ ]"') do (
rem У кого английская %%k%%j%%i
 set mydate=%%i%%j%%k
rem Убираем лидирующий "0" из даты, если есть
 for /f "tokens=* delims=0" %%q in ("!mydate!") do (
   set onomydate=%%q
   set "namemydate=%%o.%%p%%q"
rem Сравниваем "имя" "расширение" "заданная дата" = "имя" "расширение" "дата создания" файла
   if "%%o.%%p%newsdate%"=="!namemydate!" (
rem Дальше вольны делать с файлами, что захотим, например:
    copy "%qw%\%%o.%%p" "%Userprofile%\Desktop\Folder\")))
exit
0
1 / 1 / 1
Регистрация: 24.08.2015
Сообщений: 5
27.08.2015, 11:41  [ТС]
alpap приветствую, видимо я ничего не понимаю. т.к. данный скрипт модернизировать под задачу не получается.. он просто не работает
0
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
27.08.2015, 11:55
avdross, avdross, Тогда рассказываю. Первое - это надо скачать утилиту nircmd (есть здесь на форуме или в и-нете - кто ищет тот найдет) и кинуть в system32. Указать свои пути. В строке 15 поставить не 3 дня, а 30. Будут копироваться файлы из папки (которую укажете) в папку (которую укажете) с разницей в дате создания соответственно 30 дней, если у Вас не получается проверить это (файлы с месячной давновностью у Вас 100% есть) тогда и не беритесь за это дело, дальше не справитесь - ложку дал, кушайте сами.
0
1 / 1 / 1
Регистрация: 24.08.2015
Сообщений: 5
28.08.2015, 12:47  [ТС]
Лучший ответ Сообщение было отмечено ComSpec как решение

Решение

Немного допилил, с использованием исключений.
Думаю некоторым это будет полезно, однако жаль что сообщество на форуме не проявило интереса к данной теме.
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
@echo off
SetLocal EnableDelayedExpansion
rem переключаемся на Windows - кодировку
chcp 1251 
 
rem исходная папка
set "in_folder=C:\temp\111"
rem обработка файлов логов у которых дата  последнего изменения меньше или равна текущей дате минус дней
set old_date=2
rem обработка файлов архивов логов у которых дата  последнего изменения меньше или равна текущей дате минус дней
set old_7zip=50
 
 
rem папка с архиватором 7-Zip\7z (добавляем путь в системные переменные)
SET PATH=C:\ArhLogKAV;%PATH%
rem файл исключений exclusions.txt
set exclusions=C:\ArhLogKAV\exclusions.txt
rem куда записывать результаты скрипта
set "out_folder=%in_folder%\7zip_logs"
rem куда записывать лог
set "LogFile=%out_folder%\7zip_logs.log"
 
 
if not exist "%out_folder%" md "%out_folder%"
ECHO. >> "%LogFile%"
ECHO ***** Начало %DATE% %TIME% ***** >> "%LogFile%"
ECHO %TIME% Добавляем в архив %DATE%.7z файлы дата изменения которых меньше %DATE% на %old_date% дня/дней >> "%LogFile%"
forfiles /P "%in_folder%" /D -%old_date% /C "cmd /c 7z a -m0=LZMA2:d=96m:fb=128 -mx=7 -mmt=2 -sdel  -r0 -x@"%exclusions%" "%out_folder%\%DATE%.7z" "@path" | findstr /P /I /B "Compressing" >> %LogFile%"
ECHO %TIME% Удаляем 7-Zip, старше %DATE% на %old_7zip% дня/дней  ***** >> "%LogFile%"
Forfiles -p "%out_folder%" /M *.* /D -%old_7zip% /C "cmd /c del /q @path >> %LogFile%"
ECHO *****%exclusions% Конец %DATE% %TIME%  ***** >> "%LogFile%"
exit /b
Из недостатков:
не пишет лог удаленных файлов
не пишет в лог результат сжатия файлов, только факт сжимания
если обрабатывать нечего в логе будет пусто, без записи "нет файлов для обработки" и т.п.
1
1 / 1 / 1
Регистрация: 24.08.2015
Сообщений: 5
28.08.2015, 12:51  [ТС]
Файл со скриптом во вложении
Вложения
Тип файла: zip ArhLogKAV.zip (969.3 Кб, 28 просмотров)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.08.2015, 12:51
Помогаю со студенческими работами здесь

Выполнение tracert и запись логов
Добрый день. Нужна помощь в написании bat файла. Что должно д.б.: 1. проверка, есть файл test_tracert.txt в папке c:\aaaa если нет...

Запись логов подключения к сетям
Доброго времени суток, уважаемые. Недавно на нашем маленьком захалустно-провинциальном предприятии организовали подключение к...

Батник на удаление логов по заданным параметрам
Проблема заключается в том что не могу понять как сделать через утилиту forfiles удаление всего кроме одной папки forfiles.exe /p...

Копирование логов из различных, по дате, папок
Добрый день! Столкнулись с задачей: Есть папки с логами, вида: c:\etc\logs\2018\05\16\CompanyName1\ ...

Архивация на лету
Возможно ли средствами windows (желательно CMD/BAT, но не обязательно) архивировать создаваемый файл "на лету", минуя его...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru