Ich habe folgendes.
- Ein Java-Prozess, der Protokolle in eine Datei schreibt
- Ein Shell-Skript, das den Java-Prozess startet.
Ich muss die Protokolldatei nach dem Start des Java-Prozesses lesen, um den korrekten Start zu überprüfen.
Ich habe es versucht, tail -f
aber es bleibt für immer hängen. Ich muss tail
nach dem Drucken von n Zeilen anhalten. -n
Gibt es eine ähnliche Option für vorherige Linien?
command-line
bash
tail
theShadow89
quelle
quelle
Antworten:
Sie können die Ausgabe des
tail -f
anhead
die Menge der Linien gezeigt zu begrenzen:um insgesamt nur 100 Zeilen anzuzeigen.
quelle
Nur neue Zeilen
Bei der Ebene stammen
tail -f
die ersten 10 Zeilen aus der Datei, wie sie bereits vorhanden ist:schreibt 10 Zeilen,
log.txt
wenn es ausgeführt wird, und 20 (n-10) Zeilen, die später hinzugefügt werden.Bei einer Protokolldatei verwenden Sie normalerweise
-f
(--follow
), um die in Zukunft geschriebenen Zeilen anzuzeigen.Um nur die 30 Zeilen anzuzeigen, die nach dem
tail
Start geschrieben wurden, beschränken Sie die anfängliche Ausgabe auf 0:quelle