Скрипт архивации

Скрипт архивации

Тема в разделе "Темы со старого форума", создана пользователем Бэкап, 18.02.2015.

Загрузка...
Ответов: 0 Просмотров: 414 Ответить в теме
Воспользуйтесь функцией автоматического продвижения темы для увеличения числа просмотров темы, продаж платного контента и узнаваемости Вашего бренда. Услуга продвижения действует на протяжении 3-х дней и стоит всего 50 STF Wallet.

Продвинуть тему
  1. Бэкап

    Код:
    '==  Аргументы для запуска скрипта: 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 = "F:\test\" ' Какую папку архивировать ==========================|
    'OutputFolder = "D:\test\" ' Путь куда архивировать ===========================|
    'ZipFile = OutputFolder & Date & "_test.zip" ' Как назвать ====================|
    'Life = "-10" ' Срок жизни фойлов в папке архивирования =======================|
    '==============================================================================|
    
    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
    
    'Удаление в папке всех файлов старше Life дней.
    Set FSO = CreateObject("Scripting.FileSystemObject")
    'Выставляем количество дней, старше которых будет производится удаление файлов.
    OldDate = DateAdd("d", Life , date)
    'Указываем директорию в которой удаляем старые файлы.
    Set Folder = FSO.GetFolder(OutputFolder)
    Set FC = Folder.Files
    For Each F1 in FC
        If F1.DateLastModified < OldDate Then
            F1.Delete
    End If
    Next
     
    18.02.2015 Сообщений: Симпатий:
В этой теме всего одна страница
Вам, как гостю, ограничены возможности взаимодействия с темами. Пройдите бесплатную регистрацию и откройте для себя море возможностей.