Скрипт создает 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