美文网首页
linux操作集-定时删除日志文件

linux操作集-定时删除日志文件

作者: 爱编程的凯哥 | 来源:发表于2018-11-27 22:02 被阅读26次

    需求描述:

     一台前置服务器,每天生产大量日志文件,需要配置定时任务,每天执行一次,检查并删除30天前的日志文件。
    

    配置过程:

    • 1 选择自己的脚本目录
    mkdir  /home/bin
    cd /home/bin
    
    • 2 创建脚本文件
    touch del_30.sh
    
    • 3 配置脚本,定义find函数,删除目录/apps/log/下所有类型文件
    find /apps/log/* -type f -mtime +30 -exec rm -rf {} \;
    #find查找文件
    # /apps/log/*   对应目录下所有文件
    #  -type f 所有类型的文件
    # -mtime +30 修改时间超过30天的
    #Access time 访问时间、
    #Modify time 最后一次修改内容时间、
    #Change time 最后一次改变文件时间,包括权限等等
    # -exec 执行函数
    #  rm -rf 删除命令
    # {} \ 表示find匹配到的所有文件( {} \中间有控制 ,\;中间没有空格)
    
    • 4 设置可执行权限
    chmod +x del_30.sh
    
    • 5 添加定时任务
    crontab -e
    
    样图
    (1)前边是corn表达式,
    (2)然后接你的sh文件,
    (3)最后为执行结果输出地址,一般配置“ >/dev/null 2>&1 & ”表示不打印在任
    何地方,相当于个黑洞。
    • 6 可用crontab -e查看以有哪些定时,如


      image.png
    • 7对于有些服务器未安装crontab命令,则需提前安装,联网安装:

     yum install vixie-cron
     yum install crontabs
    
    rpm -q 包名:查询包是否安装
    rpm -qa:查询所有已安装的RPM包
    
    *   rpm -ivh 包全名
        *   -i(install):安装
        *   -v(verbose):显示详细信息
        *   -h(hash):显示进度
        *   --nodeps:不检测依赖性
    
    • 9 测试安装是否完成,验收结果,cron 是 linux 的内置服务,可以用以下的方法启动、关闭这个服务:
    service crond start     //启动服务
    service crond stop      //关闭服务
    service crond restart   //重启服务
    service crond reload    //重新载入配置
    service crond status    //查看crontab服务状态
    

    Linux操作集目录 https://www.jianshu.com/p/7839d27c62f8

    相关文章

      网友评论

          本文标题:linux操作集-定时删除日志文件

          本文链接:https://www.haomeiwen.com/subject/mdmnqqtx.html