Ich versuche, eine Protokolldatei für Vorkommen eines Wortes zu sehen ("Purge"). Ich möchte die letzten 10 übereinstimmenden Zeilen anzeigen (zum Zeitpunkt der Ausführung des Befehls) und beobachten Sie die Datei für neu angehängte Zeilen, die den Kriterien entsprechen.Powershell: Anzeigen der letzten X Zeilen eines Protokolls, die einem Kriterium entsprechen und beobachten Sie die Datei
Bisher habe ich etwas mit Powershell arbeiten:
get-content .\CallAudit.Engine.log -tail 10 -Wait | where {$_ -match "Purge"}
Dies funktioniert, aber es wird die letzte (alle) 10 Zeilen und gilt nur dann den Filter.
Ich möchte
- nur die bekommen passende letzten 10 Zeilen
- haben den Befehl halten die Datei zu beobachten.
Kann dies getan werden?
Schön, sieht sehr "gesunden Menschenverstand". Gibt es eine Möglichkeit, die beiden Ergebnislisten miteinander zu verknüpfen, so dass dies ein "Einzeiler" ist? –
Warum? Die Idee war, sie in erster Linie aufzuteilen, um zu vermeiden, dass die "where"/foreach-Schleifen zu einfach sind. Lesbarkeit sollte immer Priorität haben. :-) Wenn Sie es wirklich in einer Zeile benötigen, fügen Sie '' 'nach der ersten Zeile hinzu, um den aktuellen Befehl/Zeile zu beenden und die Zeilen zu verbinden. Ex .. 'Get-Content .. | wo .. | Wähle -letztes 10; get-content -wait | wo .... ' –
Warum? Weil ich bin gespannt auf die Syntax :) –