Ich suche nach einer Möglichkeit, einfach die letzten X Zeilen von einem systemctl-Dienst in Debian auszudrucken. Ich möchte diesen Code in einem Skript installieren, das die gedruckten und neuesten Protokolleinträge verwendet. Ich habe diesen Beitrag gefunden, konnte ihn aber nicht für meine Zwecke ändern.
Momentan verwende ich diesen Code, der mir nur einen kleinen Ausschnitt der Protokolldateien gibt:
journalctl --unit=my.service --since "1 hour ago" -p err
Um ein Beispiel dafür zu geben, wie das Ergebnis aussehen soll, geben Sie einfach den obigen Befehl für einen Dienst ein und scrollen Sie bis zum Ende des Protokolls. Kopieren Sie dann die letzten 300 Zeilen von unten.
Meine Idee ist, egrep ex zu verwenden. egrep -m 700 .
aber ich hatte seitdem kein glück mehr.
quelle
-n
von journalctrl ist was Sie wollen. zBjournalctl -n 300
Wenn Sie die letzten n Zeilen anzeigen und neue Nachrichten sehen möchten, während sie im Protokoll gedruckt werden, versuchen Sie Folgendes:
Wo
-n
gibt die Anzahl der Zeilen an, die Sie am Ende des Protokolls sehen möchten, und-f
gibt an, dass Sie dem Protokoll folgen möchten, wenn es sich ändert.quelle
Gerade:
Parameter
-e
steht für:quelle
Ich habe es mit sed commmand versucht und es hat gut funktioniert
Unter Befehl werden die letzten 300 Zeilen angezeigt
quelle