手机
当前位置:查字典教程网 >脚本专栏 >linuxshell >Shell定时删除指定时间之前的文件
Shell定时删除指定时间之前的文件
摘要:最近世界杯来了,一直忙于工作和世界杯之间,都没有空来管管我的blog了,今天只能整个简单的小shell给大家了.公司要求删除一个月之前的备份...

最近世界杯来了,一直忙于工作和世界杯之间,都没有空来管管我的blog了,今天只能整个简单的小shell给大家了.公司要求删除一个月之前的备份文件,免得把硬盘给整爆了,上服务器看了下,居然都有3个月的备份没有清理了,还好是sql备份,不然硬盘空间早就满了.

下面是我的解决办法:

复制代码 代码如下:

cat delbak.sh

#!/bin/sh

location="/root/sqlbak/"

find $location -mtime +30 -type f |xargs rm -f

ps:

location 是设置查找的目录

--mtime +30 是设置时间为30天前

-type f 这周查找的类型为文件

然后加入crontab定时来删除:

复制代码 代码如下:

crontab -l

10 4 1 * * /bin/sh /root/soft_shell/delbak.sh

设定为每个月1号晚上4点10分执行脚本.当然你也可以根据你自己的需求去整.

相同的删除方法:

复制代码 代码如下:

find /root/sqlbak -mtime +30 -type f -name *.gz -exec rm -f {} ;

【Shell定时删除指定时间之前的文件】相关文章:

一句话Shell命令关闭不需要的随机启动服务

用shell脚本在mysql表中批量插入数据的方法

Shell脚本学习指南之查找与替换介绍

Shell编程中的特殊变量之进程状态变量介绍

Shell脚本学习指南之文本处理工具

linux命令详解之挂载光驱的方法

Shell脚本实现递归删除空文件夹

Shell处理带空格的文件名的方法

Shell去除空行的4种方法

利用shell删除数据表中指定信息和字段对应的文件

精品推荐
分类导航