2015-05-08 3 views
-1
  • Мы хотим отслеживать активность файлов в одной из общих папок на нашем сервере.Мониторинг файлов в PowerShell

    $folder = 'D:\MySharedFolder' 
    
  • Планирование использовать FileSystemWatcher и журнал деятельности, как новое, изменить & Удалить в текстовый файл.

    $fsw = New-Object IO.FileSystemWatcher $folder, $filter -Property @{IncludeSubdirectories = $true;NotifyFilter = [IO.NotifyFilters]'FileName, LastWrite'} 
    Register-ObjectEvent $fsw Created -SourceIdentifier FileCreated -Action 
    { 
        $name = $Event.SourceEventArgs.Name 
        $changeType = $Event.SourceEventArgs.ChangeType 
        $timeStamp = $Event.TimeGenerated 
        Write-Host "The file '$name' was $changeType at $timeStamp" -fore green 
        Out-File -FilePath D:\Reports\Phx_New.txt -Append -InputObject "The file '$name' was $changeType at $timeStamp" 
    } 
    
  • Мы хотим запустить мониторинг между 0800 до 1800 (рабочее время)

  • Мы хотим разбить файлы журнала мониторинга, как файл может получить очень огромный, если мониторинг остался в рабочем состоянии весь день экономить на один файл.
  • Мы планируем запустить его за 15 минут, поэтому через час я должен получить не менее 4 файлов журнала.

Благодарим вас заранее.

+0

Есть ли там реальный вопрос? –

+0

Пожалуйста, имейте в виду, что присоединение события FileSystemWatcher на сетевом диске (т. Е. SAMBA) может привести к очень непредсказуемому поведению, например, к отключению события, когда есть даже минимальное отключение сети. Я боролся с ним в течение нескольких дней, пока не решил отказаться от и реализовать сценарий с файловыми циклами, который запускается каждую минуту через Task Scheduler. См. Http://stackoverflow.com/questions/7818545/filesystemwatcher-stops-monitoring-network-folder –

ответ

0

Для этого вы можете создать другой скрипт со всеми необходимыми конфигурациями и в конце просто запустить этот скрипт для выполнения ваших настроенных интервалов.

Смежные вопросы