zoukankan      html  css  js  c++  java
  • 定时任务删除日志文件

    问题:

    服务器上日志文件不断增加导致磁盘满,用户无法登陆到Linux机器。

    解决方案:

    定时任务每日删除3天前的日志。

    步骤:

    1、手动执行命令删除日志

    find /opt/web/log/ -mtime +3 -name "*.log.*" -exec rm -rf {} ;

    命令解析:

    将目录/opt/web/log/下3天前文件后缀为.log的文件删除

    find:linux的查找命令,用户查找指定条件的文件;

    /opt/web/log/:想要进行清理的任意目录;

    -mtime:标准语句写法;

    +3:查找3天前的文件,这里用数字代表天数;

    "*.log":希望查找的数据类型,"*.jpg"表示查找扩展名为jpg的所有文件,"*"表示查找所有文件,这个可以灵活运用,举一反三;

    -exec:固定写法;

    rm -rf:强制删除文件,包括目录;

    {} ; :固定写法,一对大括号+空格++; 

    2、将脚本写入到文件,使用文件进行日志删除

    创建文件:touch  auto-del-3-days-ago-log.sh

    开启权限:chmod -x  auto-del-3-days-ago-log.sh

    编辑文件:vim auto-del-3-days-ago-log.sh

    写入脚本:find /opt/web/log/ -mtime +3 -name "*.log.*" -exec rm -rf {} ;

    执行脚本清除日志:sh auto-del-3-days-ago-log.sh

    3、添加定时任务,每天凌晨0点10分执行脚本自动清除日志

    执行命令:crontab -e

    写入命令:10 0 * * * /opt/web/auto-del-3-days-ago-log.sh >/dev/null 2>&1

  • 相关阅读:
    为什么要用<!DOCTYPE>声明
    [asp.net core] Tag Helpers 简介(转)
    asp.net core输出中文乱码的问题
    探索Aspnetcore+mysql+efcore
    [Redis]发布/订阅
    [Centos 6]升级安装GCC(2)
    [Centos]升级安装GCC
    [小程序]那些icons
    初探微信小程序
    [CentOs7]搭建ftp服务器(3)——上传,下载,删除,重命名,新建文件夹
  • 原文地址:https://www.cnblogs.com/gongxq/p/11002124.html
Copyright © 2011-2022 走看看