我正在尝试从中获取最后几行,journalctl
以便将它们输入到我的conky
. 然而journalctl
,默认情况下提供了太多浪费空间的废话:journalctl -u PROCESS -n 5 --no-pager -l
我得到如下条目:
DATE TIME HOSTNAME PROCESS: MESSAGE
我只想打印TIME MESSAGE
。我怎样才能做到这一点?
手册页说有一个-o
参数,但没有适合我需要的预定义格式。我尝试添加--output-fields=__REALTIME_TIMESTAMP,MESSAGE
,但这只是显示默认输出(而不是时间戳/消息)。该论点声称只有某些格式受到影响,所以我尝试--output-fields=__REALTIME_TIMESTAMP,MESSAGE -o verbose
了,但这只会给我正常的 vebose 输出。此外,显然总是打印 4 个字段,这对我来说已经太多了。我只想要 2:一个紧凑的时间戳和消息。
我可以使用一些 bash 魔术或 python 脚本来清理它,但这似乎有点过分。当然有办法让 journalctl 给我一个时间戳和消息吗?
这似乎已在 2018 年实施,请参阅此 PR。对于 236 及更高版本,您似乎可以使用
--output-fields=
,如--help
. 检查您的版本systemctl --version
,我的 CentOS 7 目前(2019 年)运行版本 219,因此这可能需要一些时间才能在大多数环境中使用。编辑:仅供参考 EL8(截至 2021 年 4 月 12 日)运行 systemd 239,因此可用。
journalctl --output cat