【Linux】配置定时清空tomcat日志的脚本

linux中配置tomcat日志定时删除

新建脚本DailyDeleteLogs.sh

然后给脚本授权
新建脚本
mkdir -p /home/shell/
cd /home/shell/
touch DailyDeleteLogs.sh
chmod 777 *.sh

脚本内容如下

// An highlighted block
#!/bin/bash

# 清空指定 Tomcat 日志文件和 catalina.out 的函数
clear_tomcat_logs() {
    local tomcat_dir="$1"

    # 检查目录是否存在
    if [ -d "$tomcat_dir" ]; then
        # 清空目录下的所有 .log 和 .txt 文件
        find "$tomcat_dir/logs" -type f \( -name "*.log" -o -name "*.txt" \) -exec rm -f {} \;
        echo "Tomcat 日志文件已清空: $tomcat_dir"
    else
        echo "Tomcat 目录不存在: $tomcat_dir"
    fi

    # 检查 catalina.out 文件是否存在
    local catalina_out_file="$tomcat_dir/logs/catalina.out"
    if [ -f "$catalina_out_file" ]; then
        # 清空 catalina.out 文件
        echo -n > "$catalina_out_file"
        echo "catalina.out 文件已清空: $tomcat_dir"
    else
        echo "catalina.out 文件不存在: $tomcat_dir"
    fi
}

# 设置 Tomcat 目录列表
tomcat_dirs=(
    "/home/tomcat-test1"
    "/home/tomcat-test2"
)

# 循环清空每个 Tomcat 目录下的日志文件和 catalina.out
for tomcat_dir in "${tomcat_dirs[@]}"; do
    clear_tomcat_logs "$tomcat_dir"
done

该脚本主要用于清空tomcat的logs中的日志数据

再配置一个crontab
crontab -e
进入到cron编辑模式,切到英文输入状态,按 I 键进入输入状态
0 0 * * * /home/shell/DailyDeleteLogs.sh
按esc退出输入状态,按 : 输入 wq! 保存并退出

这样一个定时清空tomcat的脚本就配好了
具体的时间根据你的cron表达式进行控制

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值