网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

Linux定时删除日志的简单实现方法

导语

成都创新互联公司长期为近1000家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为勐海企业提供专业的做网站、网站建设勐海网站改版等技术服务。拥有十年丰富建站经验和众多成功案例,为您定制开发。

linux是一个很能自动产生文件的系统,日志、邮件、备份等。虽然现在硬盘廉价,我们可以有很多硬盘空间供这些文件浪费,让系统定时清理一些不需要的文件很有一种爽快的事情。

项目中会生成各种各样的日志,随着时间的推移,日志也是越来越多。超过一定时间的日志就没有了参考的价值,也会占用空间,所以一般的项目都会删除日志。本篇文章的需求是删除 7 天之前的日志,大致分为两步,一是删除日志的命令,二是设置定时任务。

删除指定时间的日志

首先是查找所有 7 天前的日志,使用 find 查找的时候加上 -mtime 参数,其含义为 查找在指定时间曾被更改过的文件或目录,单位以24小时计算。实例为 find you/path -mtime +7 -name '*.log',如下

Linux定时删除日志的简单实现方法

查找完成了,接下来是删除。在上面语句的基础上,加上 -exec 参数可以实现删除,参数含义为 假设find指令的回传值为True,就执行该指令。所以完整的语句为 find you/path -mtime +7 -name '*.log' -exec rm -rf {} \; 。实际执行下,删除 16 天之前的日志,不然下面没办法演示了

Linux定时删除日志的简单实现方法

16 天之前只有一条日志,执行后再次查找不存在,说明删除成功。

设置定时任务

最后将命令添加定时任务。关于 crontab 命令以及执行时间的设定,可以查看下方的参考资料。
添加之前先来看下 14 天之前的日志

Linux定时删除日志的简单实现方法

有一条日志。编辑定时任务,执行 crontab -e 将删除日志命令追加到末尾 */1 * * * * find you/path -mtime +14 -name '*.log' -exec rm -rf {} \; ,设定为每分钟执行一次。稍等一分钟,再来查看 14 天之前的日志

Linux定时删除日志的简单实现方法

可以看到在添加定时任务之后,没有手动删除,日志已经被自动删除了。当然不需要每分钟来执行一次,将时间设定为每天 1 点的时间,最终定时任务以及删除日志命令如下

0 1 * * * find you/path -mtime +7 -name '*.log' -exec rm -rf {} \;

Linux定时删除日志的简单实现方法

参考资料:find 命令、 crontab 命令、linux 利用crontab添加定时任务。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对创新互联的支持。


当前名称:Linux定时删除日志的简单实现方法
网页路径:http://bjjierui.cn/article/gpiisp.html

其他资讯