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

 更新时间:2019年04月08日 08:35:48   作者:haoyq  
这篇文章主要给大家介绍了关于Linux定时删除日志的简单实现方法,文中通过示例代码介绍的非常详细,对大家学习或者使用Linux具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧

导语

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

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

删除指定时间的日志

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

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

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

设置定时任务

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

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

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

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

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

总结

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

相关文章

  • 搭建阿里云ecs服务器之安装图形化界面的方法

    搭建阿里云ecs服务器之安装图形化界面的方法

    这篇文章主要介绍了搭建阿里云ecs服务器之安装图形化界面的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • linux下yum安装时出现Loaded plugins: fastestmirror的解决办法

    linux下yum安装时出现Loaded plugins: fastestmirror的解决办法

    这篇文章主要给大家介绍了linux下yum安装时出现Loaded plugins: fastestmirror,使用 yum 出现 Loaded plugins: fastestmirror,文中有详细的解决方法,通过代码介绍的非常详细,需要的朋友可以参考下
    2023-11-11
  • 阿里云ECS实例设置用户root密码和远程连接的方法

    阿里云ECS实例设置用户root密码和远程连接的方法

    这篇文章主要介绍了阿里云ECS实例设置用户root密码和远程连接的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • centos7 服务器基本的安全设置步骤

    centos7 服务器基本的安全设置步骤

    在使用云服务器的过程中经常会遇到很多非法的入侵试图登录服务器,所以我们需要对服务器进行安全防范,需要的朋友可以参考下
    2019-11-11
  • linux curl命令详解及实例分享

    linux curl命令详解及实例分享

    curl命令使用了libcurl库来实现,libcurl库常用在C程序中用来处理HTTP请求,curlpp是libcurl的一个C++封装,这几个东西可以用在抓取网页、网络监控等方面的开发,而curl命令可以帮助来解决开发过程中遇到的问题。
    2014-08-08
  • linux中了minerd之后的完全清理过程(详解)

    linux中了minerd之后的完全清理过程(详解)

    下面小编就为大家带来一篇linux中了minerd之后的完全清理过程(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • Ubuntu 系统中文显示乱码的问题解决

    Ubuntu 系统中文显示乱码的问题解决

    最近在工作中发现在Ubuntu 系统中出现中文乱码,通过查找相关的资料发现可能是因为系统没有配置中文字符编码的原因,下面这篇文章就来详细介绍了Ubuntu系统中文显示乱码的问题解决方法,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-02-02
  • Linux下双网卡Firewalld的配置流程(推荐)

    Linux下双网卡Firewalld的配置流程(推荐)

    firewalld提供了一个 动态管理的防火墙,用以支持不同网络区域的规则,分配对一个网络及其相关链接和界面一定程度的信任。这篇文章给大家介绍了Linux下双网卡Firewalld的配置流程,需要的朋友参考下吧
    2018-04-04
  • linux下Vps自动备份web和mysql数据库的脚本

    linux下Vps自动备份web和mysql数据库的脚本

    这篇文章主要介绍了vps下web与mysql数据库的备份方法,需要的朋友可以参考下
    2012-05-05
  • 详解Linux服务器配置——搭建SVN服务器

    详解Linux服务器配置——搭建SVN服务器

    虽然在windows上搭建SVN很简单,但是效能却不高,这当然是和linux相比了,本篇文章主要介绍了Linux服务器配置——搭建SVN服务器,具有一定的参考价值,有兴趣的可以了解一下。
    2016-12-12

最新评论