Linux 删除指定日期之前的文件

Linux 删除指定日期之前的文件

1. 使用find与exec

在一个目录中保留最近三个月的文件,自动删除三个月前的文件。

find /opt/bak2 -mtime +92 -type f -name *.bk[12] -exec rm -rf {} \;

说明
/opt/bak2 ——设置查找的目录;
-mtime +92 ——设置时间为91天前;
-type f ——设置查找的类型为文件;
-name *.bk[12] ——设置文件名后缀为bk1或者bk2;
-exec rm -f ——查找完毕后执行删除操作;

将此命令写入crontab后即可自动完成查找并删除的工作了。

2. 使用find与xargs

find /opt/bak2/ -ctime +92 -type f -name *.bk[12] | xargs rm -rf

3. 编写自动作业

3.1 编写清理日志脚本clearlog.sh

   vi clearlog.sh
   #!/bin/sh
   find /opt/bak2 -mtime +92 -name "*.log" -exec rm {} \;

3.2 给脚本授权

    chmod +x clearlog.sh

3.3 加入定时执行任务

    vi /etc/crontab

在最后加入:

1 0 * * *  root /opt/sh/clear.sh

每天零点一分点自动执行clearlog.sh
3.4 重启crontab服务

    service crond restart
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值