Je cherche un moyen d'imprimer simplement les dernières lignes X d'un service systemctl dans Debian. Je voudrais installer ce code dans un script, qui utilise les entrées de journal imprimées et les plus récentes. J'ai trouvé ce message mais je n'ai pas pu le modifier à mes fins.
Actuellement, j'utilise ce code, qui me donne juste un petit extrait des fichiers journaux:
journalctl --unit=my.service --since "1 hour ago" -p err
Pour donner un exemple de ce à quoi le résultat devrait ressembler, tapez simplement la commande ci-dessus pour n'importe quel service et faites défiler jusqu'à la fin du journal. Copiez ensuite les 300 dernières lignes en partant du bas.
Mon idée est d'utiliser egrep ex. egrep -m 700 .
mais je n'ai pas eu de chance depuis maintenant.
la source
-n
de journalctrl est ce que vous voulez. par exemplejournalctl -n 300
Si vous voulez voir le n dernier nombre de lignes et voir les nouveaux messages lorsqu'ils sont imprimés dans le journal, essayez ceci:
Où
-n
indique le nombre de lignes que vous souhaitez voir à la fin du journal, et-f
spécifie que vous souhaitez suivre le journal lorsqu'il change.la source
Juste:
Le paramètre
-e
signifie:la source
depuis la solution de commande de queue déjà fournie.J'ai essayé en utilisant sed commmand et cela a bien fonctionné
La commande ci-dessous affichera les 300 dernières lignes
la source