Ich habe eine sehr große Protokolldatei. Ich muss die letzte "WARN" -Zeile in dieser Datei effizient herausfinden (dh vom Ende lesen), sie analysieren und als Objekt mit dem "Date" -Feld (DateTime-Typ), dem "Level" -Feld und " Beschreibung "FeldWie effizient finden und analysieren Sie die letzte Textzeile aus einer Protokolldatei über PowerShell?
Irgendwelche Vorschläge?
Hier ist, was die Datei
[Mon Dec 14 14:57:53 2015] [notice] Child 6180: Acquired the start mutex.
[Mon Dec 14 14:57:53 2015] [notice] Child 6180: Starting 150 worker threads.
[Mon Dec 14 15:04:43 2015] [warn] pid file C:/Program Files (x86)/Citrix/XTE/logs/xte.pid overwritten -- Unclean shutdown of previous Apache run?
[Mon Dec 14 15:04:43 2015] [notice] Server built: May 27 2011 16:04:42
[Mon Dec 14 15:04:43 2015] [notice] Parent: Created child process 5608
EDIT wie
aussieht: Dieser Befehl in der Datei aussehen muss, die letzte passende Zeile von Suchkriterien finden, diese Zeile zurückkehrt, und „Stop“. Mögliche doppelte Frage ist auf verschiedene Arten unterschiedlich: mein Skript kann nicht einfach da sitzen und warten, bis die Zeile erscheint - es muss laufen, die Zeile so schnell wie möglich bekommen und aussteigen. Darüber hinaus muss es nach Teilzeichenfolge suchen, und schließlich muss ein DateTime und andere Felder aufgeteilt werden. Danke, dass Sie diese Frage nicht abschliessen.
Mögliches Duplikat [Unix tail entsprechender Befehl in Windows Powershell] (http://stackoverflow.com/questions/4426442/unix-tail-equivalent-command -in-windows-powershell) –
Es ist keineswegs äquivalent. Ich muss die letzte passende Zeile basierend auf einem Suchkriterium finden, nicht die letzten Zeilen.Außerdem muss DateTime analysiert werden. Bitte wählen Sie nicht, um zu schließen – Igorek
Im Allgemeinen ist SO ein Ort, um Hilfe mit Code zu bekommen, den Sie geschrieben haben, der nicht funktioniert. Es ist kein Ort, um nach einem Skript zu fragen, das für dich geschrieben wird. Ich bin überrascht, dass jemand mit mehr als 10.000 Ruf das hier posten würde! –