2017-08-18 3 views
0

Ich muss Protokolldateien auf Windows-Server lesen und es den Benutzern anzeigen. Ich muss nicht alle Informationen anzeigen. aus der Datei. In Unix, kann ich Tail -100 tun, um die neuesten 100 Zeilen zu bekommen und mit etwas Forschung, kann ich grep oder bekomme die Informationen nach diesem Text. Aber in Windows verwende ich "mehr", was für mich nicht funktioniert.Fragen mit Windows Mehr Befehl

Die, die ich bisher probiert habe und die ganze Datei lesen.

more <filename.txt>OutPutFile.txt 

Ich möchte eines der unten tun:

  1. Ich brauche neueste ‚x‘ Anzahl der Zeilen zu lesen.
  2. Lesen Sie die Protokolldatei nach einem bestimmten Datum. So, dass ich alle Zeilen von Protokollen bekommen kann, beginnend mit einem bestimmten Datum. Zum Beispiel kann ich alle Protokollinformationen haben. nach aus der Datei.
  3. Auch die Arbeit mit PowerShell-Befehlen ist in Ordnung, aber es können keine Anwendungen von Drittanbietern auf meinen Servern installiert werden.

Bitte helfen Sie mir bei meinem Problem. Vielen Dank.

+2

Es ist nicht klar, was Sie fragen. Es gibt GnuWin-Ports, wenn du das willst. Andernfalls würde ich empfehlen, zu PowerShells Select-String mit dem Parameter -context zu wechseln. – LotPings

+1

Es klingt, als ob Sie die erste Zeilennummer mit Ihrem Datum "[Find | FindStr]/N" finden möchten. Verwenden Sie dann 'More + n', wobei' n' relativ zu dieser Zeilennummer steht. Ich bin sicher, dass Sie Beispiele für beide Befehle finden werden, damit Sie Ihren eigenen Code erstellen und Ihre Frage entsprechend aktualisieren können. Viel Glück! – Compo

Antwort

1

die komplette Batchdatei Beispiel auf dem Kommentar, den ich gemacht basiert:

@For /F Delims^=: %%A In ('FindStr/NL "08/19/2017" "in.log"' 
) Do @If Not Defined i (Set/A "i=%%A-1"&Call More +%%i%% "in.log">"out.log") 

Ändern Sie die Namen der „in.log“ und „out.log“ Dateien und das Datum zwischen den doppelten Anführungszeichen, 08/19/2017, um Ihre bekannten Namen, Daten und Formate zu finden.

+0

Danke, diese Lösung funktionierte für eine Remoteverbindung und führte die Batchdatei aus. konnte die erforderlichen Informationen abrufen. Wird mit dem Kunden klären, ob das befriedigend ist oder nur für diesen Tag gedacht ist, da dies viele Tage nach Ablauf des Flow genutzt werden kann. – raja777m