Advertisement
Guest User

Untitled

a guest
Apr 15th, 2016
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VBScript 11.04 KB | None | 0 0
  1. Wscript.sleep 60000
  2. on error resume next
  3. Set WshScript = CreateObject("WScript.Shell")
  4. Set S = CreateObject("Wscript.Shell")
  5. set FSO=createobject("scripting.filesystemobject")
  6. s.run"taskkill   /f /im   EnergyControlCenter.exe ",0
  7. Wscript.sleep 60000
  8. s.run"taskkill   /f /im   EnergyControlCenter.exe ",0
  9. Wscript.sleep 60000
  10. s.run"taskkill /f /im CCServer.exe",0
  11. Wscript.sleep 60000
  12. s.run"taskkill /f /im CCServer.exe",0
  13. Wscript.sleep 60000
  14. on error goto 0
  15.  
  16.  
  17.  
  18.  
  19. On Error Resume Next
  20.  
  21. Time_begin = Now
  22.  
  23. 'Создание Архивов - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  24.  
  25. ' Создание папки архивирования
  26.  
  27. on error resume next
  28. 'Dim resultat5
  29. 'set fso = createobject ("scripting.filesystemobject")
  30. 'resultat5 = "Архивы"                                    'в какую папку архивировать
  31. 'fso.createfolder resultat5
  32. 'on error goto 0
  33.  
  34.  
  35.  
  36. '==  Аргументы для запуска скрипта: C:\Путь-какую-папку-архивировать\ С:\Путь-куда-архивировать\ Название-файла.zip Срокжизнифайлов
  37. '=========  Итог файл с названием \Дата.архивирования.папки_Название-файла.zip
  38.  
  39. On Error Resume Next
  40. '================= Комментировать блок если вариант без аргументов ===========|
  41. 'Set objArgs = WScript.Arguments ' Какую папку архивировать ===================|
  42. 'InputFolder = objArgs(0) ' Путь какую папку архивировать =====================|
  43. 'OutputFolder = objArgs(1) ' Путь куда архивировать ===========================|
  44. 'ZipFile = OutputFolder & Date & "_" & objArgs(2) ' Как назвать ===============|
  45. 'Life = "-" & objArgs(3) ' Срок жизни фойлов в папке архивирования ============|
  46. '=============================================================================|
  47.  
  48. '================= Комментировать блок если вариант с аргументами =============|
  49. InputFolder = "C:\Привет\Запуск GPRS_\Проверка соединения\свой-чужой\Energ" ' Какую папку архивировать ==========================|
  50. OutputFolder = "C:\Привет\Запуск GPRS_\Проверка соединения\свой-чужой\" & resultat5 & "\Energ"  ' Путь куда архивировать ===========================|
  51. ZipFile = OutputFolder & "_" & Date & ".zip" ' Как назвать ====================|
  52. Life = "-1" ' Срок жизни фойлов в папке архивирования =======================|
  53. '==============================================================================|
  54.  
  55.  
  56.  
  57. 'Удаление в папке всех файлов старше Life дней.
  58. Set FSO = CreateObject("Scripting.FileSystemObject")
  59. 'Выставляем количество дней, старше которых будет производится удаление файлов.
  60. OldDate = DateAdd("d", Life , date)
  61. 'yyyy - Year
  62. 'q - Quarter
  63. 'm - Month
  64. 'y - Day of year
  65. 'd - Day
  66. 'w - Weekday
  67. 'ww - Week of year
  68.  
  69. 'Указываем директорию в которой удаляем старые файлы.
  70. 'Set f = fso.GetFolder("C:\Привет\Запуск GPRS_\Проверка соединения\свой-чужой\Архивы") ' Какую папку очищать ==========================|
  71. 'Set fc = f.Files
  72. 'For Each f1 in fc
  73. '   Set file = fso.GetFile(f1)
  74. '  
  75. 'diff = file.DateLastModified
  76. 'diff1 = Left(diff,Len(diff)-8)
  77.  
  78. '   If diff < OldDate Then
  79.  
  80.  
  81. 'on error resume next
  82. '   file.delete true
  83.    
  84.  
  85.        
  86. 'End If
  87. 'Next
  88.  
  89.  
  90. 'CreateObject("Scripting.FileSystemObject").CreateTextFile(ZipFile, True).Write "PK" & Chr(5) & Chr(6) & String(18, vbNullChar)
  91. 'Set objShell = CreateObject("Shell.Application")
  92. 'Set source = objShell.NameSpace(InputFolder).Items
  93. '    objShell.NameSpace(ZipFile).CopyHere(source)
  94.  
  95. 'Do Until objShell.NameSpace(ZipFile).Items.Count = objShell.NameSpace(InputFolder).Items.Count
  96.  
  97. '   WScript.Sleep 500 ' Arbitrary polling delay
  98. 'Loop
  99.  
  100. '=== отправка на FTP ===
  101.  
  102. Rem Отправка на FTP и копирование ссылки в буфер (Visual Basic Script)
  103. Dim objArgs, Server, DomainName, Port, User, Pass, Folder, rootFolder, CloseDOS, DosStr, WSHShell, wsh, FileName, FolderF, dat
  104.  
  105. '=== Данные учетной записи FTP ===
  106.  
  107. Server = "10.177.101.163"
  108. DomainName = ""
  109. Port = ""
  110. User = "energy"
  111. Pass = "upload"
  112.  
  113. 'Папка на FTP, куда будут складываться файлы
  114. rootFolder = "привет" 'корневая
  115. Folder = "Archive/Archive_month1_ENERGY/" 'подкаталог
  116. dat = Month(date)
  117.  Set wsh = CreateObject("WScript.Shell")
  118. 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
  119. Set wsh = Nothing
  120.  
  121. '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  122. 'Блок мониторинга свободного пространства дисков
  123. 'select disk for monitoring
  124.  
  125. disks="C,D" 'Диски которые нужно мониторить
  126.  
  127. Dim fso1
  128. Set fso1 = WScript.CreateObject("Scripting.FileSystemObject")
  129. Set oDrives = fso1.Drives
  130.  
  131. disk = Split(disks,",")
  132.  
  133. For i = 0 To Ubound(disk)
  134.  
  135.     Set oDrive1 = fso1.GetDrive(disk(i))
  136.     totalSize = FormatNumber (oDrive1.TotalSize,0)
  137.     freeSize = FormatNumber (oDrive1.FreeSpace,0)
  138.     Onepercent=totalsize/100
  139.     percent=Cint(freesize/Onepercent)
  140.  
  141.     totalsize=CLng(totalsize/1024/1024)
  142.     freesize=CLng(freesize/1024/1024)
  143.  
  144.     Set WshNetwork = WScript.CreateObject("WScript.Network")
  145.     'WScript.Echo  WshNetwork.ComputerName
  146.    Set objSystemInfo = CreateObject("ADSystemInfo")
  147.     'wscript.echo objSystemInfo.DomainShortName
  148.  
  149.     'Здесь можно поменять значения пределов, на которые будет реагировать скрипт
  150.  
  151.     if freesize < 4096 or percent < 5 then
  152.  
  153.     ends="<br>"&chr(13)&chr(10)
  154.  
  155.  
  156.     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>"
  157.  
  158.     msg=msg&"<p></html>"
  159.  
  160.     Msgbox msg
  161.    ' sendMail()
  162.    end if
  163. Next
  164. Wscript.Sleep 5000
  165.  
  166. 'Флаг - закрывать консольное окно после передачи данных
  167. CloseDOS = True
  168. if not CloseDOS then DosStr = "&pause"
  169.      Set WSHShell = CreateObject("WScript.Shell")
  170.     Set objFSO = CreateObject("Scripting.FileSystemObject")
  171.  objArgs = "D:\Archive\Archive_month1_ENERGY\ENERGY"  & ".gbk"
  172.     'Формируем строку коннекта для утилиты FTP
  173.    TmpFile = WSHShell.ExpandEnvironmentStrings("%temp%") & "\temp_" & CInt(Rnd() * 1000)  
  174.     'ForAppending = 8, ForReading = 1, ForWriting = 2
  175.    Set objFile = objFSO.OpenTextFile (TmpFile, 2, True, 0) 'True - создать файл
  176.        objFile.WriteLine "open " & Server & " " & Port
  177.         objFile.WriteLine User
  178.         objFile.WriteLine Pass
  179.         objFile.WriteLine "cd " & rootFolder & "/" & Folder
  180.         objFile.WriteLine "binary"
  181.         objFile.WriteLine "put """   & objArgs & """"
  182.         objFile.WriteLine "disconnect"
  183.         objFile.WriteLine "bye"
  184.     objFile.Close
  185.    
  186.     'Добавляем утилиту FTP в исключения файрвола и запускаем
  187.    WSHShell.Run "cmd.exe /c ""(netsh advfirewall add allowedprogram """ & WSHShell.ExpandEnvironmentStrings("%windir%") & _
  188.       "\system32\ftp.exe"" ENABLE& ftp -s:""" & TmpFile & """" & DosStr & " )""", 0, True
  189.  
  190.     objFSO.DeleteFile TmpFile, True
  191.  
  192.     Set WSHShell = Nothing: Set objFile = Nothing: Set objFSO = Nothing
  193.    
  194. Set obj = CreateObject("Scripting.FileSystemObject") 'Calls the File System Object
  195. obj.DeleteFile("D:\Archive\Archive_month1_ENERGY\ENERGY" & ".gbk") 'Deletes the file throught the DeleteFile function
  196.  
  197. Set objArgs = Nothing
  198.  
  199.  
  200. '=== Конец отправки на FTP ===
  201.  
  202. 'Dim wsh
  203. 'Set wsh = CreateObject("WScript.Shell")
  204. '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
  205. 'Set wsh = Nothing
  206.  
  207. ' Для распаковки
  208. 'Dim wsh
  209. 'Set wsh = CreateObject("WScript.Shell")
  210. '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")
  211. 'Set wsh = Nothing
  212.  
  213.  
  214. ' Для ремонтирования
  215. 'Dim wsh
  216. 'Set wsh = CreateObject("WScript.Shell")
  217. '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")
  218. 'Set wsh = Nothing
  219.  
  220.  
  221.  
  222. 'Конец Создания Архивов - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  223. WScript.Sleep 500
  224.  
  225.  
  226.  
  227. Dim resultat1
  228. On Error Resume Next
  229.  
  230. 'Создание папки.
  231. 'Set FileSystemObject = CreateObject("scripting.filesystemobject")   'Вместо FileSystemObject можно ставить все что угодно на пример Yo.
  232. 'FileSystemObject.CreateFolder "G:\1" 'Создание папки.
  233.  
  234. 'On Error Goto 0
  235.  
  236. 'копируем папки
  237.  
  238. 'set fso = createobject("Scripting.FileSystemObject")
  239. 'set rootfolder = fso.getfolder("G:\свой-чужой")  'откуда копируем
  240. '     dst_folder = "G:\1\" 'куда копируем
  241. 'for each rf in rootfolder.subfolders
  242. '  on error resume next
  243. '  call fso.copyfolder(rf, dst_folder & "\" & rf.name)
  244. 'next
  245.  
  246. 'копируем файлы
  247.  
  248. ' Set FSO = CreateObject("Scripting.FileSystemObject")
  249. ' Set File = FSO.GetFolder("G:\свой-чужой")   'откуда копируем
  250. ' For Each File in File.Files
  251. 'enddir = "G:\1\" 'куда копируем
  252. ' FSO.CopyFile File, enddir & File.Name, True
  253. ' Next
  254.  
  255. Time_end = Now
  256. resultat1= DateDiff("s", Time_begin, Time_end)
  257. 'WScript.Sleep resultat1 * 1000
  258. WScript.Sleep 5000
  259.  Call WshScript.Run(Chr(34) & "C:\Program Files\Control Center Server\CCServer.exe " & Chr(34), 4, False)
  260. Wscript. Sleep 60000
  261. Call WshScript.Run(Chr(34) & "C:\Users\energy\Desktop\EnergyControlCenter.lnk"  & Chr(34), 4, False)
  262.  
  263. 'Call WshScript.Run(Chr(34) & "Система свой-чужой.vbs" & Chr(34), 4, False)
  264.  
  265.  
  266.    
  267.  
  268.  
  269. On Error GoTo 0
  270.  
  271. WScript.Quit
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement