====== Архивируем базы 1С ======
Скрипт создает 60 архивов. Архивы первого числа и последнего каждого месяца копируются в свои каталоги.
/////////////////////////////////
// alexey@leonchik.ru
var DEST_DIR = 'C:\\Arch';
var ARCH_NAME_PREFIX = '1C_';
var NEED = 'C:\\Arch\\need.lst';
var NO_NEED = 'C:\\Arch\\noneed.lst';
var ARCH_COUNT = 60;
var Count;
var shl = WScript.CreateObject('WScript.SHell');
var fso = WScript.CreateObject('Scripting.FileSystemObject');
var bWaitOnReturn = true;
var sSimpleMess = "Текст сообщения";
var bLastDay;
var nCurDate = new Date().getDate() ;
var nCurMonth = new Date().getMonth() + 1;
var nCurYear = new Date().getYear();
var sFNameDest = nCurYear + '-' + nCurMonth + '-' + nCurDate + '.7z'
//--------------------------------
function isLastDayMonth() {
cdate = new Date();
nextDate = new Date(cdate.getFullYear(), cdate.getMonth(), cdate.getDate() + 1);
if(nCurMonth != nextDate.getMonth() + 1)
return true;
else
return false;
}
//--------------------------------
bLastDay = isLastDayMonth();
//--------------------------------
//
// 1C_8.zip -> 1C_9.zip
// ....................
// 1C_0.zip -> 1C_1.zip
//
Count = ARCH_COUNT - 1;
while(Count) {
shl.Run('cmd /c cd ' + DEST_DIR +
' && move /Y ' +
ARCH_NAME_PREFIX + (Count-1) + '.7z ' +
ARCH_NAME_PREFIX + Count + '.7z',
7, bWaitOnReturn);
Count --;
}
shl.Run('"C:\\Program Files\\7-Zip\\7z" a -r -scsWIN -xr@' +
NO_NEED + ' ' + DEST_DIR + '\\' + ARCH_NAME_PREFIX + '0.7z @' + NEED,
7, bWaitOnReturn);
if(nCurDate == 1) {
fso.CopyFile(DEST_DIR + '\\1c_0.7z', DEST_DIR + '\\FirstDay\\' + sFNameDest);
}
if(bLastDay) {
fso.CopyFile(DEST_DIR + '\\1c_0.7z', DEST_DIR + '\\LastDay\\' + sFNameDest);
}
//--------------------------------
// Передаем на хранение другому серверу
// shl.Run('cmd /c cd ' + DEST_DIR + ' && ftp -s:mvarch.txt -i', 7, bWaitOnReturn);
В файле **need.lst** указывается то что надо архивировать
d:\Distr\1C_Base\Buh_1
d:\Distr\1C_Base\Buh_2
d:\Distr\1C_Base\Buh_3\1SBDB
d:\Distr\1C_Base\Zarplata\BaseZic
D:\Distr\1C_Base\SKAT77
"D:\Distr\1C_Base\Айрапентян бух"
"D:\Distr\1C_Base\Копия Buh_2"
D:\Distr\1C_Base\SCAT
"D:\Distr\1C_Base\Управяющий"
"D:\Distr\1C_Base\ООО РБУ №34"
D:\Distr\1C_Base\SCAT_NEW
D:\Distr\1C_Base\OOO_dv_pz_gs
В файле **noneed.lst** указываем что не помещать в архив
*.cdx
*.rar
*.zip
*.jpg
*.gif
Файл **mvarch.txt** является файлом настроек для FTP-клиента. дополнительно архивы копируются на сервер.
open 192.168.36.254
archiver
Archiver
binary
lcd d:\Arch
mput *.7z
quit