Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Wscript.sleep 60000
- on error resume next
- Set WshScript = CreateObject("WScript.Shell")
- Set S = CreateObject("Wscript.Shell")
- set FSO=createobject("scripting.filesystemobject")
- s.run"taskkill /f /im EnergyControlCenter.exe ",0
- Wscript.sleep 60000
- s.run"taskkill /f /im EnergyControlCenter.exe ",0
- Wscript.sleep 60000
- s.run"taskkill /f /im CCServer.exe",0
- Wscript.sleep 60000
- s.run"taskkill /f /im CCServer.exe",0
- Wscript.sleep 60000
- on error goto 0
- On Error Resume Next
- Time_begin = Now
- 'Создание Архивов - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- ' Создание папки архивирования
- on error resume next
- 'Dim resultat5
- 'set fso = createobject ("scripting.filesystemobject")
- 'resultat5 = "Архивы" 'в какую папку архивировать
- 'fso.createfolder resultat5
- 'on error goto 0
- '== Аргументы для запуска скрипта: C:\Путь-какую-папку-архивировать\ С:\Путь-куда-архивировать\ Название-файла.zip Срокжизнифайлов
- '========= Итог файл с названием \Дата.архивирования.папки_Название-файла.zip
- On Error Resume Next
- '================= Комментировать блок если вариант без аргументов ===========|
- 'Set objArgs = WScript.Arguments ' Какую папку архивировать ===================|
- 'InputFolder = objArgs(0) ' Путь какую папку архивировать =====================|
- 'OutputFolder = objArgs(1) ' Путь куда архивировать ===========================|
- 'ZipFile = OutputFolder & Date & "_" & objArgs(2) ' Как назвать ===============|
- 'Life = "-" & objArgs(3) ' Срок жизни фойлов в папке архивирования ============|
- '=============================================================================|
- '================= Комментировать блок если вариант с аргументами =============|
- InputFolder = "C:\Привет\Запуск GPRS_\Проверка соединения\свой-чужой\Energ" ' Какую папку архивировать ==========================|
- OutputFolder = "C:\Привет\Запуск GPRS_\Проверка соединения\свой-чужой\" & resultat5 & "\Energ" ' Путь куда архивировать ===========================|
- ZipFile = OutputFolder & "_" & Date & ".zip" ' Как назвать ====================|
- Life = "-1" ' Срок жизни фойлов в папке архивирования =======================|
- '==============================================================================|
- 'Удаление в папке всех файлов старше Life дней.
- Set FSO = CreateObject("Scripting.FileSystemObject")
- 'Выставляем количество дней, старше которых будет производится удаление файлов.
- OldDate = DateAdd("d", Life , date)
- 'yyyy - Year
- 'q - Quarter
- 'm - Month
- 'y - Day of year
- 'd - Day
- 'w - Weekday
- 'ww - Week of year
- 'Указываем директорию в которой удаляем старые файлы.
- 'Set f = fso.GetFolder("C:\Привет\Запуск GPRS_\Проверка соединения\свой-чужой\Архивы") ' Какую папку очищать ==========================|
- 'Set fc = f.Files
- 'For Each f1 in fc
- ' Set file = fso.GetFile(f1)
- '
- 'diff = file.DateLastModified
- 'diff1 = Left(diff,Len(diff)-8)
- ' If diff < OldDate Then
- 'on error resume next
- ' file.delete true
- 'End If
- 'Next
- 'CreateObject("Scripting.FileSystemObject").CreateTextFile(ZipFile, True).Write "PK" & Chr(5) & Chr(6) & String(18, vbNullChar)
- 'Set objShell = CreateObject("Shell.Application")
- 'Set source = objShell.NameSpace(InputFolder).Items
- ' objShell.NameSpace(ZipFile).CopyHere(source)
- 'Do Until objShell.NameSpace(ZipFile).Items.Count = objShell.NameSpace(InputFolder).Items.Count
- ' WScript.Sleep 500 ' Arbitrary polling delay
- 'Loop
- '=== отправка на FTP ===
- Rem Отправка на FTP и копирование ссылки в буфер (Visual Basic Script)
- Dim objArgs, Server, DomainName, Port, User, Pass, Folder, rootFolder, CloseDOS, DosStr, WSHShell, wsh, FileName, FolderF, dat
- '=== Данные учетной записи FTP ===
- Server = "10.177.101.163"
- DomainName = ""
- Port = ""
- User = "energy"
- Pass = "upload"
- 'Папка на FTP, куда будут складываться файлы
- rootFolder = "привет" 'корневая
- Folder = "Archive/Archive_month1_ENERGY/" 'подкаталог
- dat = Month(date)
- Set wsh = CreateObject("WScript.Shell")
- wsh.Run("""C:\Program Files\Firebird\Firebird_2_5\bin\gbak.exe""-b -v -ig -g ""C:\Program Files\Control Center Server\Base\ENERGY.GDB"" ""D:\Archive\Archive_month1_ENERGY\ENERGY" & ".gbk"" -user sysdba -pass masterkey"),0, true
- Set wsh = Nothing
- '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- 'Блок мониторинга свободного пространства дисков
- 'select disk for monitoring
- disks="C,D" 'Диски которые нужно мониторить
- Dim fso1
- Set fso1 = WScript.CreateObject("Scripting.FileSystemObject")
- Set oDrives = fso1.Drives
- disk = Split(disks,",")
- For i = 0 To Ubound(disk)
- Set oDrive1 = fso1.GetDrive(disk(i))
- totalSize = FormatNumber (oDrive1.TotalSize,0)
- freeSize = FormatNumber (oDrive1.FreeSpace,0)
- Onepercent=totalsize/100
- percent=Cint(freesize/Onepercent)
- totalsize=CLng(totalsize/1024/1024)
- freesize=CLng(freesize/1024/1024)
- Set WshNetwork = WScript.CreateObject("WScript.Network")
- 'WScript.Echo WshNetwork.ComputerName
- Set objSystemInfo = CreateObject("ADSystemInfo")
- 'wscript.echo objSystemInfo.DomainShortName
- 'Здесь можно поменять значения пределов, на которые будет реагировать скрипт
- if freesize < 4096 or percent < 5 then
- ends="<br>"&chr(13)&chr(10)
- msg = "<html>Domain:<b>"&objSystemInfo.DomainShortName&ends&"</b>Hostmame: <b>"&WshNetwork.ComputerName&ends&"</b>Disk <b>"&disk(i)&":"&ends&"</b>Total Size: <b>"&totalsize&" MB</b>"&ends&"Free Size: <b>"&freesize&" MB</b>"&ends&"Free: <b>"&percent&"%</b>"
- msg=msg&"<p></html>"
- Msgbox msg
- ' sendMail()
- end if
- Next
- Wscript.Sleep 5000
- 'Флаг - закрывать консольное окно после передачи данных
- CloseDOS = True
- if not CloseDOS then DosStr = "&pause"
- Set WSHShell = CreateObject("WScript.Shell")
- Set objFSO = CreateObject("Scripting.FileSystemObject")
- objArgs = "D:\Archive\Archive_month1_ENERGY\ENERGY" & ".gbk"
- 'Формируем строку коннекта для утилиты FTP
- TmpFile = WSHShell.ExpandEnvironmentStrings("%temp%") & "\temp_" & CInt(Rnd() * 1000)
- 'ForAppending = 8, ForReading = 1, ForWriting = 2
- Set objFile = objFSO.OpenTextFile (TmpFile, 2, True, 0) 'True - создать файл
- objFile.WriteLine "open " & Server & " " & Port
- objFile.WriteLine User
- objFile.WriteLine Pass
- objFile.WriteLine "cd " & rootFolder & "/" & Folder
- objFile.WriteLine "binary"
- objFile.WriteLine "put """ & objArgs & """"
- objFile.WriteLine "disconnect"
- objFile.WriteLine "bye"
- objFile.Close
- 'Добавляем утилиту FTP в исключения файрвола и запускаем
- WSHShell.Run "cmd.exe /c ""(netsh advfirewall add allowedprogram """ & WSHShell.ExpandEnvironmentStrings("%windir%") & _
- "\system32\ftp.exe"" ENABLE& ftp -s:""" & TmpFile & """" & DosStr & " )""", 0, True
- objFSO.DeleteFile TmpFile, True
- Set WSHShell = Nothing: Set objFile = Nothing: Set objFSO = Nothing
- Set obj = CreateObject("Scripting.FileSystemObject") 'Calls the File System Object
- obj.DeleteFile("D:\Archive\Archive_month1_ENERGY\ENERGY" & ".gbk") 'Deletes the file throught the DeleteFile function
- Set objArgs = Nothing
- '=== Конец отправки на FTP ===
- 'Dim wsh
- 'Set wsh = CreateObject("WScript.Shell")
- 'wsh.Run("""C:\Program Files (x86)\Firebird\Firebird_2_5\bin\gbak.exe""-b -v -ig -g ""C:\Program Files (x86)\Control Center Server\Base\ENERGY.GDB"" ""C:\Привет\Запуск GPRS_\Проверка соединения\свой-чужой\Архивы\ENERGY" & "_" & Date & ".gbk"" -user sysdba -pass masterkey"),0, true
- 'Set wsh = Nothing
- ' Для распаковки
- 'Dim wsh
- 'Set wsh = CreateObject("WScript.Shell")
- 'wsh.Run("""C:\Program Files (x86)\Firebird\Firebird_2_5\bin\gbak.exe""-c -v -i ""C:\Привет\Запуск GPRS_\Проверка соединения\свой-чужой\Архивы\ENERGY" & "_" & Date & ".gbk"" ""C:\Program Files (x86)\Control Center Server\Base\ENERGY.GDB"" -user sysdba -pass masterkey")
- 'Set wsh = Nothing
- ' Для ремонтирования
- 'Dim wsh
- 'Set wsh = CreateObject("WScript.Shell")
- 'wsh.Run("""C:\Program Files (x86)\Firebird\Firebird_2_5\bin\gfix.exe"" ""C:\Program Files (x86)\Control Center Server\Base\ENERGY.GDB"" -user sysdba -pass masterkey -mend")
- 'Set wsh = Nothing
- 'Конец Создания Архивов - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- WScript.Sleep 500
- Dim resultat1
- On Error Resume Next
- 'Создание папки.
- 'Set FileSystemObject = CreateObject("scripting.filesystemobject") 'Вместо FileSystemObject можно ставить все что угодно на пример Yo.
- 'FileSystemObject.CreateFolder "G:\1" 'Создание папки.
- 'On Error Goto 0
- 'копируем папки
- 'set fso = createobject("Scripting.FileSystemObject")
- 'set rootfolder = fso.getfolder("G:\свой-чужой") 'откуда копируем
- ' dst_folder = "G:\1\" 'куда копируем
- 'for each rf in rootfolder.subfolders
- ' on error resume next
- ' call fso.copyfolder(rf, dst_folder & "\" & rf.name)
- 'next
- 'копируем файлы
- ' Set FSO = CreateObject("Scripting.FileSystemObject")
- ' Set File = FSO.GetFolder("G:\свой-чужой") 'откуда копируем
- ' For Each File in File.Files
- 'enddir = "G:\1\" 'куда копируем
- ' FSO.CopyFile File, enddir & File.Name, True
- ' Next
- Time_end = Now
- resultat1= DateDiff("s", Time_begin, Time_end)
- 'WScript.Sleep resultat1 * 1000
- WScript.Sleep 5000
- Call WshScript.Run(Chr(34) & "C:\Program Files\Control Center Server\CCServer.exe " & Chr(34), 4, False)
- Wscript. Sleep 60000
- Call WshScript.Run(Chr(34) & "C:\Users\energy\Desktop\EnergyControlCenter.lnk" & Chr(34), 4, False)
- 'Call WshScript.Run(Chr(34) & "Система свой-чужой.vbs" & Chr(34), 4, False)
- On Error GoTo 0
- WScript.Quit
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement