【发布时间】:2018-08-13 06:35:20
【问题描述】:
我使用的是logrotate 3.12.3 版。如何告诉logrotate 排除已旋转/压缩的文件?
例如,如果我将/var/log 中的所有文件旋转为
"/var/log/*" {
compress
missingok
dateext
rotate 4
size=5000k
}
压缩文件后,如何告诉logrotate 不要旋转已旋转/压缩的文件?例如:
/var/log/file1
logrotation 后变成
/var/log/file1.20211212.gz
我试过了
tabooext + .gz
在定义之上,但它似乎没有生效。
来自man logrotate
包含文件或目录
读取作为参数给出的文件,就好像它被包含在包含指令出现的地方一样。如果给定目录, 里面的大部分文件 在继续处理包含文件之前,按字母顺序读取目录。唯一被忽略的文件是 不规则文件 文件(例如目录和命名管道)和名称以禁忌扩展名之一结尾的文件,如 tabooext 指令。
如果像下面这样工作,那就太好了。
/var/log/*[!".gz"] {
}
谢谢。
编辑
也许做一些类似的事情
/var/log/*[!.][!g][!z] {
..
}
但它会跳过名为 /var/log/test1gz 的文件。如何将. 字符与通配符匹配?
【问题讨论】: