Компьютерный форум 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=198920)

Dr.Kifir4ik 08-02-2011 17:49 1607746

Как не архивировать папки/файлы, которые не изменились?
 
Подскажите плизз как сделать чтоб не архивировались папки/файлы, которые не изменились с момента последней архивации (т.е. чтоб архивирвоались только новые папки/файлы), этакий своеобразный инкрементальный бэкап.
Пока что батник имеет следующий вид, очень жду критики/советов/подсказок

@echo off
set DD=%DATE:~0,2%
set MM=%DATE:~3,2%
set YY=%DATE:~6,4%
set TT=%Time:~0,2%_%Time:~3,2%
set dirfrom="C:\CanoScan"
set copyto="E:\Backup\%DATE%\%TT%\"
xcopy %dirfrom% %copyto% /s /e > C:\7z_copy.log
"C:\Program Files\7-Zip\7z" a "E:\Backup\%DATE%\%TT%.7z" "E:\Backup\%DATE%\%TT%\" -r > C:\7z_arh.log
rmdir "E:\Backup\%DATE%\%TT%" /s /q

Ivan Bardeen 08-02-2011 18:45 1607789

Цитата:

Цитата Dr.Kifir4ik
Подскажите плизз как сделать чтоб не архивировались папки/файлы, которые не изменились с момента последней архивации (т.е. чтоб архивирвоались только новые папки/файлы), этакий своеобразный инкрементальный бэкап.
Пока что батник имеет следующий вид, очень жду критики/советов/подсказок »

Так а чем вас не устраивает встроенный в систему ntbackup (в предположении, что у вас ОС не Vista\WS2008 и выше)?

Dr.Kifir4ik 09-02-2011 00:40 1608058

Вы не поверите, меня устраивает и даже больше, только надо чтоб копировалось через batник. (XP sp2 и WS 2003 )

amel27 09-02-2011 03:53 1608102

Цитата:

Цитата Dr.Kifir4ik
как сделать чтоб не архивировались папки/файлы, которые не изменились с момента последней архивации »

использовать ключ /M команды XCOPY

Dr.Kifir4ik 09-02-2011 14:22 1608459

Цитата:

Цитата amel27
использовать ключ /M команды XCOPY »

Спасибо большое, работает!!!

Только вопрос - а как он запоминает что уже скопировал?))
Я копирую файлы с папки А в папку В, добавляю файлы в папку А, в папку В он уже копирует только новые файлы - это супер. Но если удалить папку В, и ничего не добавить в папку А, то он ничего и не скопирует - можно ли сделать чтоб при удалении папки В, он полностью копировал папку А?

И подскажите как сделать чтоб пустой архив не создавался, если уже последняя версия файлов скопирована.
А то сейчас создается пустой архив, если до этого все уже было скопировано.

amel27 10-02-2011 06:14 1609012

Цитата:

Цитата Dr.Kifir4ik
Только вопрос - а как он запоминает что уже скопировал? »

цитата из справки XCOPY /?:
Цитата:

/M - Копирует файлы только с атрибутом "Архивный", при этом атрибут "Архивный" отключается.
Цитата:

Цитата Dr.Kifir4ik
чтоб при удалении папки В, он полностью копировал папку А »

может подойдёт ключ /D ?
Цитата:

/D:m-d-y Копирует файлы, измененные либо в указанный день, либо после. Если дата не указана, копируются только те файлы, которые новее в исходной папке.


Время: 13:08.

Время: 13:08.
© OSzone.net 2001-