Peterzz 11 Geschrieben 12. Dezember 2016 Melden Teilen Geschrieben 12. Dezember 2016 Hallo, ich habe eine Applikation die in einer Textdatei mitprotokolliert was sie gerade macht. Ca. alle 10 Minuten schreibt die Applikation in die Textdatei eine Zeile die wie folgt aussieht "Datum Uhrzeit: Immer_der_gleiche_Text" Ich hätte nun gerne eine Information darüber, wenn die Zeitspanne zwischen zwei Einträgen in der Textdatei mit dem Text (Immer_der_gleiche_Text) größer als 10 Minuten ist. Hat jemand eine Idee wie man das bewerkstelligen könnte? Gruß Peter Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 12. Dezember 2016 Melden Teilen Geschrieben 12. Dezember 2016 Du könntest mittels Powershell den Inhalt einlesen, die Zeilen entsprechend parsen, Datum und Uhrzeit in Powershell-Objekte umwandeln und diese dann vergleichen. Zitieren Link zu diesem Kommentar
blub 115 Geschrieben 12. Dezember 2016 Melden Teilen Geschrieben 12. Dezember 2016 Bevor der Schreibvorgang erfolgt, baust du sowas in dein Script ein if ($now - file.lastmodifieddate) > 10mins write2logfile "$now waren es mehr als 10 Minuten" end if Zitieren Link zu diesem Kommentar
Dukel 454 Geschrieben 12. Dezember 2016 Melden Teilen Geschrieben 12. Dezember 2016 Hast du ein Monitoring, welches Fileinhalte auswerten kann? Zitieren Link zu diesem Kommentar
Peterzz 11 Geschrieben 13. Dezember 2016 Autor Melden Teilen Geschrieben 13. Dezember 2016 Danke für die Anregungen Hast du ein Monitoring, welches Fileinhalte auswerten kann? Ich habe ein Monitoringsystem, das aber die Anforderung nicht erfüllen kann. Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 13. Dezember 2016 Melden Teilen Geschrieben 13. Dezember 2016 .... hhmmm ... und wie bewerkstelligst Du nun diese Aufgabe? Wir sind neugierig. ;) :rolleyes: ... oder gibst Du einfach auf? :confused: :schreck: Zitieren Link zu diesem Kommentar
Winnie75 10 Geschrieben 14. Dezember 2016 Melden Teilen Geschrieben 14. Dezember 2016 Willst Du innerhalb der gesamten Textdatei alle Einträge wissen, deren aufeinanderfolgender Zeitstempel mehr als 10 Minuten auseinander liegt oder möchtest Du wissen, ob diese Zeitdifferenz zwischen letzten beiden Einträgen größer 10 Minuten ist? Zitieren Link zu diesem Kommentar
Peterzz 11 Geschrieben 14. Dezember 2016 Autor Melden Teilen Geschrieben 14. Dezember 2016 ... und wie bewerkstelligst Du nun diese Aufgabe... Ich bin leider etwas im Stress (und das in der Vorweihnachtszeit), sodass ich dieses Thema leider etwas nach hinten schieben muss :-( Willst Du innerhalb der gesamten Textdatei alle Einträge wissen, deren aufeinanderfolgender Zeitstempel mehr als 10 Minuten auseinander liegt oder möchtest Du wissen, ob diese Zeitdifferenz zwischen letzten beiden Einträgen größer 10 Minuten ist? In der Textdatei stehen viele Einträge mit unterschiedlichen Informationen. Eine spezielle Information (Immer_der_gleiche_Text) kommt über den Tag in der Datei häufig vor und wenn die Zeitspanne zwischen den Einträgen (Immer_der_gleiche_Text) > 10 Mnuten ist, dann hätte ich gerne eine Information darüber. Zitieren Link zu diesem Kommentar
MurdocX 949 Geschrieben 14. Dezember 2016 Melden Teilen Geschrieben 14. Dezember 2016 (bearbeitet) Ich möchte heute eine gute Tat tun und zugegeben es war eine kleine Herausforderung.. bin auch gerade krank. Hier ist die Lösung: ## # Jan Weis - Zeitintervallmessung von 10 Minuten einer Datei # v0.1 - 14.12.2016 # # INIT-VARIABLEN [Bool]$Exit = $false [String]$FILE = "C:\Users\XXX\Desktop\Neues Textdokument (2).txt" # Werte abrufen [DateTime]$objTempWriteTime = ( Get-Item -Path $FILE | Select-Object -ExpandProperty LastWriteTime ) while ($Exit -eq $false) { # Werte abrufen [DateTime]$objLastWriteTime = ( Get-Item -Path $FILE | Select-Object -ExpandProperty LastWriteTime ) # Prüfe, ob die Datei aktualisiert wurde if ($objLastWriteTime -ne $objTempWriteTime) { $objTempWriteTime = $objLastWriteTime } Else { # Auswertung if ( ($objLastWriteTime.AddMinutes(10).TimeOfDay) -lt ((get-date).TimeOfDay) ) { # Letzte Aktualisierung ist MEHR ALS 10 Min her Write-Host "`nLetzte Aktualisierung ist $objLastWriteTime durchgeführt worden!" #$Exit = $true } Else { # Letzte Aktualisierung ist WENIGER ALS 10 Min her Write-Host '.' -NoNewline } } # Warte 10 Sekunden Start-Sleep -Seconds 10 } bearbeitet 14. Dezember 2016 von MurdocX Zitieren Link zu diesem Kommentar
MurdocX 949 Geschrieben 15. Dezember 2016 Melden Teilen Geschrieben 15. Dezember 2016 Dieses Skript misst nicht den Intervall verschiedener Texteinträge sondern die Zeit in der die Datei verändert wird. Nun kannst du dir das ja noch entsprechend anpassen. Zitieren Link zu diesem Kommentar
Peterzz 11 Geschrieben 15. Dezember 2016 Autor Melden Teilen Geschrieben 15. Dezember 2016 Vielen Dank MurdocX :D :jau:und gute Besserung! Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.