Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Ветеран


Contributor


Сообщения: 2735
Благодарности: 1699

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
@Echo Off
cls
	Set "AllComp="\\127.0.0.1\Test1" "\\LocalHost\Test2" "\\192.168.100.23\Test1\Every Day""
	Set "Backup=\\192.168.100.23\Test2\Rar For Every Day"
	
	For %%p In (%AllComp%) Do FOR /F "tokens=1 delims=\" %%s IN (%%p) DO Call :ArcPrc "%%~s" "%%~p"
pause
Exit /B

:ArcPrc
	FOR /F "tokens=2 delims==." %%d in ('WMIC OS GET LOCALDATETIME /VALUE') DO SET "ToDay=%%d" &Call Set "ToDay=%%ToDay:~0,4%%-%%ToDay:~4,2%%-%%ToDay:~6,2%%"
       	FOR /F "usebackq delims=" %%f IN (`2^>nul Dir /B /A:-D /O:N "%~2\20??-??-??-*.log"^|FINDSTR /B /I /V /R /C:"%ToDay%"`) DO (
		If Exist "%~2\%%~f" (
			Set "Name=%%f"
rem			Call "C:\Program Files\WinRAR\Rar.exe" a -df -m1 "%Backup%\%%Name:~0,10%%-%~1.rar" "%~2\%%Name:~0,10%%-*.log"
			Call "C:\Program Files\WinRAR\Rar.exe" a -df -m1 -ep "%Backup%\%%Name:~0,10%%-%~1.rar" "%~2\%%Name:~0,10%%-*.log"

	))
Exit /B
В переменной AllComp перечислены сетевые пути к логам на серверах, Backup - путь, где хранятся упакованные архивы для каждого дня каждого сервера. При наличии логов за несколько дней они будут архивироваться в файл каждого дня

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 01-01-2021 в 21:51.

Это сообщение посчитали полезным следующие участники:

Отправлено: 18:08, 29-12-2020 | #3