Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Скриптик для бэкапа (http://forum.oszone.net/showthread.php?t=249604)

awaken91 20-12-2012 17:36 2049820

Скриптик для бэкапа
 
Добрый день, уважаемые пользователи форума. Я человек, который абсолютно не разбирается в написании скриптов. Может быть, кто-нибудь сможет написать следующий VBS скрипт:

1) он должен создать папку по вчерашнему числу в формате годмесяцчисло, например, 121119
2) он должен переместить папки с названиями аю, ют, вв, нс в эту папку. Правда, как правило, присутствуют одновременно только две из этих папок.

Пожалуйста, помогите, кто может, если это вообще реализуемо.

Папка, в которой нужно создать папку с числом - сетевая, вида \\filesrv-1\ЦНТРЛЗЦ\07.МШБР\КС\

Конечно, можно и бат-файлом, главное, чтобы встроенные средства Windows действовали.

Заранее благодарю!

Iska 20-12-2012 18:53 2049876

Цитата:

Цитата awaken91
он должен переместить папки с названиями аю, ют, вв, нс в эту папку. »

Откуда берутся эти папки, где они расположены?

awaken91 20-12-2012 20:07 2049917

Папки находятся в \\filesrv-1\ЦНТРЛЗЦ\07.МШБР\КС\

собственно, создать папку со вчерашним числом нужно там же и переместить туда эти папки

Iska 23-12-2012 09:45 2051439

awaken91, примерно так:
читать дальше »
Код:

Option Explicit

Dim strFolderSource
Dim strFolderDest

Dim objFSO
Dim objFolder


'strFolderSource = "\\filesrv-1\ЦНТРЛЗЦ\07.МШБР\КС\"
strFolderSource = "E:\Песочница\0216\filesrv-1\ЦНТРЛЗЦ\07.МШБР\КС"

With WScript.CreateObject("Scripting.FileSystemObject")
        If .FolderExists(strFolderSource) Then
                strFolderDest = .BuildPath(strFolderSource, LastDateFormat(Now()))
               
                If Not .FolderExists(strFolderDest) Then
                        .CreateFolder strFolderDest
                End If
               
                For Each objFolder In .GetFolder(strFolderSource).SubFolders
                        Select Case objFolder.Name
                                Case "аю", "ют", "вв", "нс"
                                        objFolder.Move strFolderDest & "\"
                                Case Else
                                        ' Nothing to do
                        End Select
                Next
        Else
                WScript.Echo "Source folder [" & strFolderSource & "] not found"
        End If
End With

WScript.Quit 0
'=============================================================================

'=============================================================================
Function LastDateFormat(dtDateTime)
        Dim dtLastDate
       
        dtLastDate = DateAdd("d", -1, dtDateTime)
       
        LastDateFormat = _
                Right(CStr(Year(dtLastDate)), 2) & _
                Right("00" & CStr(Month(dtLastDate)), 2) & _
                Right("00" & CStr(Day(dtLastDate)), 2)
End Function
'=============================================================================


awaken91 24-12-2012 10:38 2052275

Попробовал, создал песочницу, не момент выполнения существовала папка вв на сервере, он создал в песочнице папку со вчерашним числом но не переместил туда вв.

Апдейт, поправил скрипт - получилось! =) Спасибо большое!

Iska 24-12-2012 10:56 2052290

Цитата:

Цитата awaken91
Апдейт, поправил скрипт - получилось! »

Что поправляли?

awaken91 25-12-2012 12:02 2053058

Код:

'strFolderSource = "\\filesrv-1\ЦЕНТРАЛИЗАЦИЯ\07.МАШБЮРО\ОКИС\"
strFolderSource = "\\filesrv-1\ЦЕНТРАЛИЗАЦИЯ\07.МАШБЮРО\ОКИС"

Бэкап должен прямо на сервере в той же папке быть, собственно вот и вся правка

Iska 25-12-2012 12:07 2053060

awaken91, спасибо, ясно.


Время: 11:26.

Время: 11:26.
© OSzone.net 2001-