在应用服务器上,咱们经常须要定时清理文件,尤为是日志,这时候就须要用到Linux自带的用于例行性工做调度的at和crontab两个命令了。其中at是仅执行一次的命令,此次先不谈,而crontab是循环执行的,符合定时清理文件的需求。
cron这个系统服务是默认启动的,当用户用crontab这个命令新建工做调度后,该项工做就会被记录到/var/spool/cron/里面去了,并且是以帐号做为判别,好比kindy使用crontab后,他的工做被记录到/var/spool/cron/kindy里面去。这个文件不能直接用vi编辑,而须要借助命令crontab.服务器
crontab [-u username] [-l|-e|-r]
若是要定时清除的日志是已知的固定路径下的文件,好比/*/logs,咱们规定天天23:59定时去清除最后修改时间在7天之前的文件,那么首先编辑任务:日志
crontab -e
进入后会看到每项工做的格式是怎么定义的,而后按需求直接写任务:code
23 59 * * * root find /*/logs -name 'catalina.out*.log' -and -mtime +7 -type f |xargs rm
再退出,之后就会定时执行啦~crontab