如何将旋转日志文件的内容动态地输出到标准输出?

如何将旋转日志文件的内容动态地输出到标准输出?

我想要输出多个旋转日志文件的内容,比如说,file.log.1输出file.log到标准输出以便继续处理。

对于单个日志文件,我可以使用tail -F file.log,但因为我也想包含旧日志文件的内容:有没有一个好的方法可以在不使用临时文件的情况下做到这一点?

答案1

解决方案其实很简单:

(cat file.log.1;tail -F file.log)

这将适用于例如grep

(cat file.log.1;tail -F file.log) | grep pattern

对于多个日志文件,这将按顺序提供所有文件的内容,并监视最后一个文件中的新条目。

(cat file.log.{10..1};tail -F file.log) | grep pattern

相关内容