Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Архивирование (http://forum.oszone.net/showthread.php?t=353507)

John87 02-05-2023 13:12 3008451

Архивирование
 
День добрый, встала задача об архивации всякого мусора

собственно что имеем, в папке c:\logs\ есть куча папок в стиле 02.05.2023, 01.05.2023, 30.04.2023 и так далее..
нужно чтоб винрар раз в сутки архивировал папку допустим 3 дневной давности по пути D:\archive\ с именем 29.04.2023.rar и удалил после сего действа папку 29.04.2023, ну и в догонку дописал в файл D:\archieve\all.log какой архив он создал и какую папку удалил

как то это можно сделать?

Я что то ломаю голову, и ничего путевого не получается..

можно ps, в общем то без разницы

megaloman 02-05-2023 15:49 3008457

Код:

@Echo Off &Cls
        Set "BoxIn=Z:\logs"
        Set "BoxArc=Z:\Box_Arc"
        Set "Log=Z:\archieve\all.log"
        Set /A N=3
       
        Set Arc="C:\Program Files\WinRar\WinRAR.exe" a -r -df -ibck

        For /F "usebackq skip=%N% delims=" %%d In (`2^>nul Dir "%BoxIn%\" /AD /B /O-D /TC ^|FindStr /R /C:"[0-3][0-9]\.[0-1][0-9]\.20[0-9][0-9]"`) Do (
                Call Set "Msg=%%Date%% %%Time%% "%BoxIn%\%%d"
                %Arc% "%BoxArc%\%%d.rar" "%BoxIn%\%%d" &&Call Set "Msg=%%Msg%% "%BoxArc%\%%d.rar"
                Call Echo %%Msg%%>>%Log%
        )
Pause
Exit /B

Пути укажите свои


Время: 07:53.

Время: 07:53.
© OSzone.net 2001-