gifts2017

Еще один скриптик для сохранения dbf баз с помощью архиватора. Коротенько (5 строк!) и работает ;) ТЕПЕРЬ 3 строки!!!

Опубликовал Константин (const000) в раздел Администрирование - Архивирование (backup)

Работает на Win XP,2003 и далее. Хорошо запускается из планировщика.
В результате получается архив с именем что-то типа
arc2008-09-17-17-14
Стало актуальным в свете борьбы за легальность софта - 7-zip бесплатен и отлично работает, больше ничего не требуется.
Вместо
c:
cd "C:\Program Files\7-Zip"
можно указать иное расположение архиватора. (Да, я знаю, что можно вписать прямо в путь вызова, но работает НЕ ВСЕГДА и не знаю почему).
Вместо D:\Arhive\ - путь архивирования
Вместо C:\Shop\ - что архивировать
-x!*.cdx - указывает, что не нужно архивировать индексы

Благодаря Diamin получилось умять все в 3 строки!
Смотрим версию 2
Дополнительные фичи в посте Diamin

Скачать файлы

Наименование Файл Версия Размер
Скриптик 748
.1221657577 0,24Kb
25.09.09
748
.1221657577 0,24Kb Скачать
второй укороченный вариант 211
.1227014062 0,15Kb
25.09.09
211
.1227014062 0,15Kb Скачать

См. также

Подписаться Добавить вознаграждение
Комментарии
0. Константин (const000) 24.09.08 09:35
Работает на Win XP,2003 и далее. Хорошо запускается из планировщика.
В результате получается архив с именем что-то типа
arc2008-09-17-17-14
Стало актуальным в свете борьбы за легальность софта - 7-zip бесплатен и отлично работает, больше ничего не требуется.


Перейти к публикации

1. V. L. (Vladal) 24.09.08 09:35
Оригинальное решение!
А я парился... [infostart.ru/projects/1106]
2. Константин (const000) 24.09.08 11:37
(1) Блин, у тебя намного интереснее. А мне-то всего и нужно было экстренно настроить бекап баз в магазинах. Договорились с операторами, что ЭТО стоит в автозагрузке и они по утрам пьют чай в течение 3-х минут после включения компьютера ;) Как ни странно, в 5-и магазинах работает уже три года - при плановом объезде только старые архивы удаляю, чтобы диск не переполнялся.
3. GSoft. (GSoft) 25.09.08 00:00
(2) а что мешает настроить автоудаление в том же скрипте
к примеру лет пять назад настраивал архивирование по следующей схеме
1. утром создается архив с текущей датой
2. каждые два часа создается текущий архив
3. вечером переписывается архив с текущей датой
4. в конце текущего месяца бэкапы прошлого сливались на ленту и удалялись

итого: каждый день имелся утренний архив, текущий с актуальностью не более 2 часов и в конце дня уже вечерний и куча +
все было реализовано с помощью winrar`a bat-файла и планировщика windows)))
4. Константин (const000) 25.09.08 10:53
(3) Да в принципе ничего. Можно тем же for разобрать имя файла архива и сравнить с текущим месяцем/годом. Но если все это корректно делать (где-то здесь похожий скриптик был), то это будет уже прога строк на 50, в которой без стакана не разберешься. А так все просто и понятно. Для большинства плюсанувших это ИМХО просто маленькая демонстрация возможностей командной строки ;)
5. Александр (KooLooShin) 30.09.08 08:58
> Да, я знаю, что можно вписать прямо в путь вызова, но работает НЕ ВСЕГДА и не знаю почему

Можно использовать 7z для командной строки - 7za. Закидываешь его в папку с Виндой и больше не паришься с указанием пути.

Для удаления старых файлов - nCron рулит. А чтобы иконка не светилась в трее - nCron Lite рулит и педалит.
6. Сергей (seermak) 10.10.08 19:31
мне понравилось - немного переделал, вставил в процедуру ПриСменеРасчетногоПериода (конфа ЗП), все равно бух работает монопольно и при начале нового месяца расчета получаю архив. Минусы: с русским каталогом базы - облом; Надо ложить программу чтобы сделать архив, (ложу автоматом) - бух поначалу пугалась, потом привыкла
7. Дмитрий Пономарев (Diamin) 18.11.08 11:14
Вот готовое решение для максимального сжатия только необходимого(получаем закрытый паролем "123" архим минимального размера с имененем "База_ГГГГ.ММ.ДД" и раскидываем его копию по дублирующим хранилищам в сети не имеющим общедостуных шар, на текущем сервере храним только последнюю версию бекапа):

Батник :
rem жмем
"C:\Program Files\7-Zip\7zG.exe" a -t7z E:\ZiK_%date:~-4%.%date:~-7,2%.%date:~-10,2%.7z -i!E:\Bases\2007\ZP\PRBasic\* -x@E:\Batch\Zip1cBases\ZiK_ExcludeFiles.ini -mhe -mx9 -p123 -y

rem удаляем старое
del E:\BackUp1cBases\ZiK_*.7z /F /Q

rem Копируем свежее
xCopy E:\ZiK_%date:~-4%.%date:~-7,2%.%date:~-10,2%.7z E:\BackUp1cBases\ /h /r /y /z

rem удаляем свежее
del E:\ZiK_*.7z /F /Q

rem авторизуемся на сетевом ресурсе
net use \\192.168.0.1\F$ /User:Robot Pasword

rem копируем на сетевой ресурс
xCopy E:\BackUp1cBases\ZiK_%date:~-4%.%date:~-7,2%.%date:~-10,2%.7z \\192.168.0.1\F$\ /h /r /y /z

rem авторизуемся на сетевом ресурсе
net use \\192.168.0.144\1cbackup /User:robot Pasword

rem копируем на сетевой ресурс
xCopy E:\BackUp1cBases\ZiK_%date:~-4%.%date:~-7,2%.%date:~-10,2%.7z \\192.168.0.144\1cbackup /h /r /y /z

ZiK_ExcludeFiles.ini - Файл исключений:
E:\Bases\2007\ZP\PRBasic\ExtDb
E:\Bases\2007\ZP\PRBasic\NEW_STRU
E:\Bases\2007\ZP\PRBasic\*.CDX

если кому необходимо могу дать решение:
для создания архива WinRar'ом из командной строки
для записи данных на болванку с помощью Nero с запуском из командной строки.
для записи данных на болванку с помощью бесплатной программы с запуском из командной строки.
8. Константин (const000) 18.11.08 14:23
(7) А что будет если в прошлую сессию архивирования сеть не работает/не отвечают компы/сменился пароль, а мы это просмотрели? Такое архивирование ОПАСНО!!!
Минус - 7zip в максимальной компрессии не очень быстр, но это на любителя
P.S. Я не знал, что можно сделать %date:~-x.x%. Удобно, хотя и не очень читабельно. Но зачем нам точки в имени файла?
9. Дмитрий Фамилия (freek) 28.12.11 14:13
10. simuljakr (simuljakr) 28.03.13 17:08
А если есть работающие пользователи ?
Нормально все заархивируется ?
11. Константин (const000) 28.03.13 18:07
(10) simuljakr, Да, сам пользую. Если запущено в монопольном режиме - естественно не заархивируется (точнее будет все, кроме *dbf :) ). Если идет сложный процесс перепроведения - могут быть косяки времени проведения, но это лечится тестированием/исправлением. Все-таки это простая штучка для мелких баз.
Опыт восстановления из таких архивов есть успешный неоднократный.