Linux教程

linux下定时切分日志

本文主要是介绍linux下定时切分日志,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1.当服务端系统跑起来时,创建的日志会随着时间的推移越来越大,不利于后续的分析,所以需要在原日志的基础上拆分出每天的日志单独保存
该脚本是随着服务端启动一起启动,日志同时生成

#!/bin/bash

cd ./log #进入日志文件夹
start_date=`date +%Y-%m-%d` #获取日志最初创建的时间
cut_tmie="23:59" #每天切分日志的时间点
start_log_file="$start_date.log" #获取最初创建日志的名字

while true 
do
    current_H_M=`date +%H:%M` #当前时间的时分
    current_date=`date +%Y-%m-%d` #当前的日期
    save_log_file="$current_date.log.1" #当前日期的新名字
    files=$(ls *.log 2> /dev/null | wc -l) #判断log文件夹下是否有最初的.log文件
    if [[ $files != 0 ]]; then

        if [[ $current_H_M == $cut_tmie ]]; then #判断当前时间点和设置的切分时间点是否相同
            #从当前最初log文件中找到当前整天时间的日志内容并重定向到当天的.log.1中
            sed -n "/${current_date}/,/${current_date}/"p $start_log_file > $save_log_file 
        fi
    fi
    sleep 1m

done

这篇关于linux下定时切分日志的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!