logrotate 可以处理目录树中的所有 *.log 吗?

logrotate 可以处理目录树中的所有 *.log 吗?

Logrotate 可以对指定目录中的单个文件或通配符文件(例如 *.log)进行处理,但它是否本身具有遍历任意深度的目录树并处理它找到的文件的能力?

谢谢

答案1

不,不是。不过,您可以使用通配符来连接目录,因此,如果您的树的已知深度较小,您可以执行以下操作:

   /a/* /a/*/* /a/*/*/*  {
       rotate 5
       weekly
   }

如果只有叶子上的原木,则只/a/*/*/*需要它们。

“请谨慎使用通配符。如果您指定*,logrotate 将旋转所有文件,包括之前旋转的文件。解决此问题的方法是使用olddir指令或更精确的通配符(例如*.log)”--logrotate 手册页

相关内容