У меня есть каталог, который заполняется некоторой программой. Я хотел бы отслеживать этот каталог и проверять, постоянно ли файлы добавляются в каталог. Если для примера в течение 5 минут файл не добавляется в директиву, я хочу получить уведомление. Файлы также удаляются, но мне просто нужно заботиться о новых файлах.
Сценарий будет работать около 20 минут каждые три часа.
Код для FileSystemWatcher:Мониторинг каталога с FileSystemWatcher
$watcher = New-Object System.IO.FileSystemWatcher
$watcher.Path = "C:\temp\test"
$watcher.IncludeSubdirectories = $true
$watcher.EnableRaisingEvents = $true
$created = Register-ObjectEvent $watcher "Created" -Action {
write-host "Created: $($eventArgs.FullPath)"
Get-Date -Format "HH:mm:ss" | Out-File "C:\temp\log.txt" -Append
}
Я не знаю, как я мог achive это, и я благодарен за каждый вход.
Но что, если некоторые удаляют файл перед проверкой? – Richard
@Richard. Если кто-то вручную удалит файл, LastWriteTime также будет обновляться и может смутить вещь. Но я полагаю, что OP просто хочет удостовериться, что всегда есть файлы, написанные в этом каталоге. Вы всегда можете придумать дополнительные варианты использования, которые не рассматриваются. –
Сценарий будет работать только около 20 минут, а не 24/7. Вполне вероятно, что файлы исчезли, прежде чем вы проверите, но я просто должен убедиться, что всегда появляются новые файлы. Я проверю ваше решение и отчитаюсь. –