Hoi Heb een script gemaakt die naar een patroon in een text bestand moet zoeken.
Dat text bestand word door een applicatie aangemaakt en op het moment dat die applicatie klaar is met verwerken, plaatst hij een bepaalde regel er in. Dit gebeurt met meerdere bestanden die ook gecontroleerd moeten worden.
Het powershell script moet daar op wachten voordat hij verder mag gaan.
Nu checkt het script dat prima, alleen door een break er in stop hij met het script en worden de andere bestanden niet gecontroleerd
Dit is het script waat ik gemaakt hebt. Heb al aardig wat opgezocht op het internet en weet dat het probleem die break is, alleen kom ik er nog niet achter hoe ik dat anders moet oplossen.
Ben daar voor nog lerende met PowerShell.
Dat text bestand word door een applicatie aangemaakt en op het moment dat die applicatie klaar is met verwerken, plaatst hij een bepaalde regel er in. Dit gebeurt met meerdere bestanden die ook gecontroleerd moeten worden.
Het powershell script moet daar op wachten voordat hij verder mag gaan.
Nu checkt het script dat prima, alleen door een break er in stop hij met het script en worden de andere bestanden niet gecontroleerd
Dit is het script waat ik gemaakt hebt. Heb al aardig wat opgezocht op het internet en weet dat het probleem die break is, alleen kom ik er nog niet achter hoe ik dat anders moet oplossen.
Ben daar voor nog lerende met PowerShell.
PowerShell:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
| <# .SYNOPSIS Lees de PPQ Controle files uit .DESCRIPTION Dit script leest de door StreamServe aangemaakte PPQ log files uit, hier wordt in aangegeven dat de aangeleverde PPQ file klaer is met het verwerken. .PARAMETER Folder De locatie van het bestand .PARAMETER FileName De naam van het bestand wat uitgelezen dient te worden. .PARAMETER Pattern De naam van het pattroon waar op gecontroleerd dient te worden. .EXAMPLE .\Check-PCLLogs -Folder "C:\Test\" -FileName "test.txt" -Pattern "Ik en klaar met werken" #> Function CheckPPQCTRL { [CmdletBinding()] Param( [string]$Folder = "C:\Temp\StreamTest", [string]$FileName, [string]$Pattern ) If (-not $folder.EndsWith('\')) { $Folder += '\' } $FullPath = $Folder + $FileName Write-Host "Check if Pattern exsists" Get-Content $FullPath -wait | ForEach-Object {if($_ -eq "$Pattern") {Break}} } # End Function Function CheckFileExists { [CmdletBinding()] Param( [string]$Folder = "C:\Temp\StreamTest", [string]$FileName ) If (-not $folder.EndsWith('\')) { $Folder += '\' } $FullPath = $Folder + $FileName Write-Host "CHeck for File exsists" While (!(Test-Path $FullPath)) {Start-Sleep -s 1} Write-Host "File Exsists" } # Lees PDF_1_Nota_Prod01 Log file Write-Host "Verwerk PDF_1" CheckFileExists -FileName "PDF_1_nota_prod01.txt" CheckPPQCTRL -FileName "PDF_1_nota_prod01.txt" -Pattern "Input PDF_1_nota_prod01.ppq is verwerkt" # Lees PDF_2_Rappel_Prod01 Log file Write-Host "Verwerk PDF_2" CheckFileExists -FileName "PDF_2_rappel_prod01.txt" CheckPPQCTRL -FileName "PDF_2_rappel_prod01.txt" -Pattern "Input PDF_2_rappel_prod01.ppq is verwerkt" |
PS5 User ;-) ...