Я не уверен, как это сделать.Мне нужно выполнить скрипт.
Скрипт должен следить за папкой для созданных файлов.Если файлы созданы, это вызовет ряд функций.
Но до этого скрипт должен ВСЕГДА проверять, существует ли определенный файл.Потому что иначе скрипт не будет выполняться.Существующий файл необходимо переместить, прежде чем делать что-либо еще.
Я попытался использовать событие fileloaded, но оно перезапишет существующий файл ...
Есть ли способ сделать это?
Вот начало сценария:
$fsw = New-Object IO.FileSystemWatcher $folder, $filter -Property @{
IncludeSubdirectories = $true # <-- set this according to your requirements
NotifyFilter = [IO.NotifyFilters]'FileName, LastWrite'
}
$onCreated = Register-ObjectEvent $fsw Created -SourceIdentifier FileCreated -Action {
$path = $Event.SourceEventArgs.FullPath
$name = $Event.SourceEventArgs.Name
$changeType = $Event.SourceEventArgs.ChangeType
$timeStamp = $Event.TimeGenerated
Write-Host "The file '$name' at '$path'was $changeType at $timeStamp" -Fore white
$lineas = (Get-Content $root\UNB\TMP\FACT_TEMPORAL.TXT | Measure-Object -Line).Lines
Write-Host "El archivo contiene $lineas lineas" -Fore white
if ($lineas -gt 3) {
Write-Host "El archivo contiene información" -Fore white
limpia
leeyedita
printpdf
borrar
renombra
} else {
Write-Host "El archivo NO contiene información" -Fore white
borrar
}
}