Как мониторить сетевую папку?
+ Ответить
Показано с 1 по 7 из 7

Тема: Как мониторить сетевую папку?

  1. #1
    Ветроманьяк Аватар для Digy
    Байк
    Gravel
    Адрес
    д. Мюнхино
    Сообщений
    4,064
    Записей в дневнике
    16

    По умолчанию

    В папке \\server\share\path\to\docs хранится множество документов.

    как с рабочей станции можно мониторить эту папку и в случае её изменения получить какой-нибудь алерт типа "о-оу! появился новый документ лажа.xls" ?

    ( изменение папки = добавление, изменение атрибутов или удаление файлов в этой папке )

    ps: Рабочая станция под WinXP
    На связи! t.me/zamyatin | instagram.com/digy ⛵️

  2. #2

    По умолчанию

    напиши скрипт на вбасике али делфе и пусть аплекуха висит в трее
    А сейчас надо обязательно дунуть. Если не дунуть - никакого чуда не произойдет! (с)
    Амаяк Акопян.

  3. #3

    По умолчанию

    В Windows есть такая возможность Портфель. Возможно, с его помощью удастся. Возможно, для этого придется сделать копию этой папки.
    И все идет по плану

  4. #4

    По умолчанию

    +1 WSH

    Можно оттолкнуться от этого:

    '********************************************* **********************
    ' Имя: MonitorFileCreation.vbs
    ' Язык: VBScript
    ' Описание: Подписка на события создания файла в папке C:\TEST
    ' в асинхронном режиме
    '********************************************* **********************
    Option Explicit

    ' Объявляем переменные
    Dim strComputer ' Имя компьютера
    Dim strNamespace ' Имя пространства имен WMI
    Dim objService ' Объект SWbemServices
    Dim strResult ' Результат запроса
    Dim objSink ' Объект SWbemSink
    Dim bDone ' Переменная-флаг выхода из цикла

    '********************** Начало *************************************
    ' Присваиваем начальные значения переменным
    strComputer = "."
    strNamespace = "Root\CIMV2"

    ' Подключаемся к пространству имен
    Set objService = GetObject("WinMgmts:\\" & _
    strComputer & "\" & strNamespace)
    ' Создаем объект SWbemSink
    Set objSink = wscript.CreateObject("WbemScripting.SWbemSink", "Sink_")

    ' Выполняем метод ExecMethodAsync_
    objService.ExecNotificationQueryAsync objSink, _
    "SELECT * FROM __InstanceCreationEvent WITHIN 5 WHERE " &_
    "Targetinstance ISA 'CIM_DirectoryContainsFile' and " &_
    "TargetInstance.GroupComponent= " &_
    "'Win32_Directory.Name=""C:\\\\TEST""' "

    ' Выводим сообщение о запуске сканера
    Wscript.Echo " Запущен сканер создания файла в папке C:\TEST"

    ' Приостановливаем сценарий до завершения выполнения запроса
    While Not bDone
    WScript.Sleep 1000
    Wend

    ' Процедура-обработчик события OnObjectReady объекта sWbemSink
    Sub Sink_OnObjectReady(oOutParams, oContext)
    ' Формирум строку для вывода
    strResult = Date & " " & Time & vbCrLf &_
    "Создан файл: " & oOutParams.TargetInstance.PartComponent

    ' Выводим результат на экран
    Wscript.Echo strResult

    bDone = True
    End Sub
    '************************* Конец ***********************************
    Скорость мысли.

  5. #5
    невеломаньяк Аватар для yurynt
    Байк
    GT-ёныш
    Адрес
    Москва, Фестивальная
    Сообщений
    1,095

    По умолчанию

    наверное это можно сделать с помощью SNMP
    не надо ездить быстрее, чем летает твой ангел-хранитель.

  6. #6

    По умолчанию

    Включаем аудит на папке, и потом удобным способом мониторим event log сервера - уверен, что есть какая-нибудь готовая утилита для этого, или действительно можно скриптик приписать.

  7. #7

    По умолчанию

    в тотал коммандере есть возможность синхронизации папок
    перед началом процесса синхронизации на экране выведен лог найденных отличий
    недостатки:
    работает по запросу, алерты не видел
    необходимость держать копию папки

    этим файловым менеджером пользуюсь позорно редко, так что меня наверняка ща поправят по существу
    "Учитывая глупость большинства людей, широко распространенная точка зрения будет скорее глупа, чем разумна" © Б.Рассел

+ Ответить

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)