为了账号安全,请及时绑定邮箱和手机立即绑定

如何从linux日志文件中只获取新行?

如何从linux日志文件中只获取新行?

慕尼黑5688855 2021-07-02 10:01:38
我有两个想法。首先,我以为我阅读了该文件,将其删除,然后日志记录最终会重新创建它(我错了)。第二次尝试时,我想我会制作文件的副本,并在一段时间后比较副本和原始文件。你怎么看?第二种方法是不是一个不错的选择?如果是这样,什么是有效比较文件的好方法?IMO 这将是非常低效的,因为我必须两次读取一个大日志文件并逐行比较它......我也对其他方法感兴趣。带轮询的东西并不理想,这应该是我用 crontab 调用的工作。
查看完整描述

2 回答

?
芜湖不芜

TA贡献1796条经验 获得超7个赞

如果您正在运行的平台使用,systemd您可以使用该journalctl命令。

journalctl命令有一个--since非常强大的选项

您可以使用它在特定时间后获取日志:

journalctl --since "2018-10-08 13:00:00"

查看时间之间的日志

journalctl --since "2018-10-08 13:00:00" --until "2018-10-08 13:30:00"

或者N次前

journalctl --since "10min ago"

要查看特定的应用程序日志,请使用该-u选项

journalctl -u tomcat.service --since "1 hr ago"


查看完整回答
反对 回复 2021-07-13
?
长风秋雁

TA贡献1757条经验 获得超7个赞

关于什么:

   $ tail -f /var/log/long_file.log


查看完整回答
反对 回复 2021-07-13
  • 2 回答
  • 0 关注
  • 182 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信