在Linux中使用cron作业删除旧文件

问题描述 投票:0回答:2

我正在设置一个cron作业,我想删除超过1天的日志文件。执行此操作的命令如下。我在AWS Linux EC2实例上执行此操作。

find /var/log/tomcat8/ -mindepth 1 -mtime +1 -delete

但我想要实现的是我想排除.log文件被删除,并希望只删除.gz扩展名的文件。任何机构都可以告诉我如何在find命令中实现这种排除。

linux amazon-web-services logging amazon-ec2 cron
2个回答
4
投票

只需查找* .gz文件并删除它们即可。

find /var/log/tomcat8/ -name '*.gz' -mindepth 1 -mtime +1 -delete

在删除之前,只需列出文件以确保删除正确的文件。

find /var/log/tomcat8/ -name '*.gz' -mindepth 1 -mtime +1 -print

0
投票

打印所有选择的文件如下:

find /var/log/tomcat8/ -name '*.gz' -mindepth 1 -mtime +1

上面的文件可以删除如下:

find /var/log/tomcat8/ -name '*.gz' -mindepth 1 -mtime +1 -exec rm{} \
© www.soinside.com 2019 - 2024. All rights reserved.