清理日志或文件的脚本

清理日志或文件的脚本


背景:我们的服务在运行中总会不停的输出日志,日积月累可能会占用大量磁盘空间,如果每次手动去清理又显得很不优雅,所以我们可以通过脚本去操作,只保留某一段时间内的日志文件。

脚本代码

  1. 服务器任意目录下创建 clearup_logs.sh 文件,内容如下:
    #!/bin/bash  
      
    # 定义日志目录路径  
    LOG_DIR="/data/yfund-airflow-docker/logs"  
      
    # 遍历目录下的每个文件夹  
    for dir in "$LOG_DIR"; do  
      # 判断是否为文件夹  
      if [ -d "$dir" ]; then  
        # 进入文件夹  
        cd "$dir" || continue  
      
        # 执行 find 命令删除超过 15 天的文件  
        find ./* -type f -mtime +15 -exec rm {} +  
        find ./* -type d -empty -exec rm -rf {} +
      fi  
    done
    
  2. clearup_logs.sh文件添加可执行权限
    chmod +x cleanup_logs.sh  # 添加可执行权限
    
  3. 执行脚本
    ./cleanup_logs.sh          # 执行脚本
    

crontab自动化

注意:大前提是需要机器支持 crontab

# 每天00:30分执行一次脚本
30 0 * * * /data/logs/cleanup_logs.sh 
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值