Linux下定时删除指定目下n天前的文件

* 6 * * * find /root/home/zhang/* ctime 1 -exec rm -rf {} \;
表示每天早上六点删除/root/home/zhang目录下一天前创建的所有文件,不删除文件夹zhang,如果这个文件夹也要删除的话用 * 6 * * * find /root/home/zhang ctime 1 -exec rm -rf {} \;
* 6 * * * 第一个*号表示时间中的 分钟  取值范围:0-59
          第二个*号表示时间中的 小时  取值范围:0-23
          第三个*号表示一个月中的第几天,取值范围:1-31
          第四个*号表示一年中的第几个月,取值范围:1-12
          第五个*号表示一个星期中的第几天,以星期天开始依次的取值为0~7,0、7都表示星期天
ctime 表示创建时间,1 表示一天前,其实Linux中不存在文件创建时间,只有访问时间(atime)、修改时间(mtime)、状态改动时间(ctime)
可以通过命令 stat + 文件路径  查看时间
也可通过命令 touch -t 201212212359 aa (建立文件aa,时间是2012年12月21日23时59分)修改时间
若是删除目录下的指定文件可以用:
find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} \;
find /var/www/ -type f -mtime +30 -exec rm -f ‘{} \;‘删除30天以前的过期文件。
命令说明:
/var/www/是查找文件的路径。
-type f是指定文件类型为普通文件。
-mtime +30是指修改时间距离现在30天的文件。
-exec rm -f指执行删除匹配出来的文件并且不提示,有的系统需要带单引号,有的不需要。
将以上命令,添加到crontab中,即可实现定期删除了。-cmin -600         # 是600分钟内创建的文件-size +10M         # 是大于10M的文件
时间: 2024-10-06 11:49:33

Linux下定时删除指定目下n天前的文件的相关文章

linux下定期删除指定文件夹下2天前的文件

vi编脚本delete-log.sh内容如下:find /home/ctbackup/ -mtime +2 -name orabackup- -exec rm -rf {} \;find /home/ctbackup/ -mtime +2 -name OilDaQingAllinoneM- -exec rm -rf {} \; 设定执行脚本时间:每天3点执行脚本命令crontab -e0 3 * /home/delete-log.sh 原文地址:https://blog.51cto.com/su

Linux下定时切割Mongodb数据库日志并删除指定天数前的日志记录(转)

文章转自:http://www.osyunwei.com/archives/8998.html 说明: 操作系统:CentOS Mongodb安装目录:/usr/local/mongodb Mongodb数据库存放目录:/home/data/mongodb/mongodb_data Mongodb日志存放目录:/home/data/mongodb/mongodb_log 实现目的: 对Mongodb数据库日志按天保存,并且只保留最近7天的日志记录. 具体操作: 使用Mongodb数据库自带的命令

Linux下定时备份MySQL数据库的Shell脚本

Linux下定时备份MySQL数据库的Shell脚本 对任何一个已经上线的网站站点来说,数据备份都是必须的.无论版本更新还是服务器迁移,备份数据的重要性不言而喻.人工备份数据的方式不单耗费大量时间和精力,还灰常不专业的说.于是,有了下面这段脚本的出现.参考了网上的很多教程,外加自己的测试,以下脚本经测试可用.#!/bin/bash#Shell Command For Backup MySQL Database Everyday Automatically By Crontab#Author :

Linux下定时执行脚本(转自Decode360)

文章来自:http://www.blogjava.net/decode360/archive/2009/09/18/287743.html Decode360's Blog  老师(业精于勤而荒于嬉 QQ:150355677 MSN:[email protected]) 菜鸟表示不会写shell脚本,但还是能够看懂的,昨天因为传了太多数据,结果namenode进入了safe mode,然后小伙伴赶紧就暂停了每天早晨4点自动执行的数据合并压缩和传输的脚本,今天我自己准备改,才发现这篇博文. 先说说

linux下定时执行脚本

cron是一个linux下的定时执行工具,可以在无需人工干预的情况下运行作业.由于Cron 是Linux的内置服务,但它不自动起来,可以用以下的方法启动.关闭这个服务: 1.cron的启动 /sbin/service crond start //启动服务/sbin/service crond stop //关闭服务/sbin/service crond restart //重启服务/sbin/service crond reload //重新载入配置 你也可以将这个服务在系统启动的时候自动启动:

Linux下的删除过期文件操作

在实际的软件开发项目中,经常会有实现删除过期文件的需求.即要求程序能够自动删除多长时间之前生成的文件.本文提供了一个示例代码,为相关的开发工作提供了参考. 程序如下(本程序用makefile进行编译): /*********************************************************************** 版权所有 (C)2014, Zhou Zhaoxiong.* * 文件名称: TestFileDelete.c* 内容摘要: 用于演示Linux下过期

linux下递归删除空目录的bash实例

# $1必须是绝对路径crurl=$1func_hdir(){echo $crurl  cd $crurl  for aitem in `ls -l | grep "^d" | awk '{print $9}'`; do        crurl=$crurl/$aitem        func_hdir $aitem  done dirc=`ls $crurl`  if [ "$dirc" = "" ]  then    echo $crur

Linux下定时重启Tomcat(修改)

1.写一个shell脚本test.sh,重新启动tomcat [java] view plaincopy #!/bin/sh . /etc/profile pid=`ps aux | grep tomcat | grep -v grep | grep -v retomcat | awk '{print $2}'` echo $pid if [ -n "$pid" ] then { echo ===========shutdown================ /opt/tomcat/

MySQL定时任务event,储存过程(定时删除指定时间前90天指定表的数据)

MySQL定时任务event,储存过程(定时删除指定时间前90天指定表的数据) 分类: MySql5.x2014-06-23 15:16 1266人阅读 评论(0) 收藏 举报 mysql数据库 [sql] view plaincopy <span style="font-family: 'Microsoft YaHei'; font-size: 14px;">MySQL定时任务event</span> 由于一些业务需求,我们可能需要定时清除数据库一些废弃的数据