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

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

gm753 29-12-2017 10:58 2787897

Bat-file for bakup
 
Подскажите содержание Бат-файла для резервного копирования фото (ipg) на сервер с локального ПК
Запускаться бат-ник будет с сервера
Структура каталогов: год, месяц, день
Если указать копирование каталога ГОД, то необходимо чтобы уже имеющиеся файлы пропускались.

DJ Mogarych 29-12-2017 11:34 2787905

Что за копирование будет - всегда полное или нужно ещё инкрементное? Это будут архивы по датам или синхронизация? Опишите подробнее.
Цитата:

Цитата gm753
Если указать копирование каталога ГОД, то необходимо чтобы уже имеющиеся файлы пропускались. »

Непонятно, что имеется в виду.

gm753 29-12-2017 14:03 2787924

xcopy \\user_comp\foto e:\backup\foto

В каталоге foto - год, месяцы, дни
бат-ник будет запускаться каждый день
фото добавляются каждый день
необходимо чтобы копировались новые фото
(имеющиеся пропускались)

megaloman 29-12-2017 16:27 2787950

gm753, Не важно, где запускается батник, главное иметь доступ и правильно указать пути. Если при вызове батника год не указан, просмотрим все годы. Если при вызове в аргументе батника указан конкретный год, например, batnik.bat 2013, то просмотрим только указанный год. В любом случае скопируем только отсутствующие и обновлённые файлы.
Код:

@Echo Off
cls

Set "BoxIn=\\UserComp\Foto"
Set "BoxArc=Z:\Box_Arc\Backup.Foto"
Set "Mask=*.jpg"

If Not "%~1"=="" (
        Call :CopyFiles "%BoxIn%" "%~1" "%Mask%" "%BoxArc%"
) Else (
        FOR /F "usebackq delims=" %%d IN (`2^>nul Dir "%BoxIn%\20??" /B /A:D`) DO (
                Call :CopyFiles "%BoxIn%" "%%d" "%Mask%" "%BoxArc%"
        )
)

pause
GoTo :Eof

:CopyFiles
        Echo +++++++ "%~1\%~2"
        xcopy "%~1\%~2\%~3" "%~4\%~2\" /S /D /Y
GoTo :Eof



Время: 09:29.

Время: 09:29.
© OSzone.net 2001-