备份日志文件的linux命令,linux切割、备份大的nohup日志文件

背景:

nohup.out日志文件太大了,且一直增长,命令查看日志受阻

目的:

①切割大文件变成多个小文件

②每天定时保存前一天的日志,重新记录当天日志

具体做法:

1.利用split命令切割

①按文件大小切割大文件:

切割文件:将ohup.out文件每500M切割一个文件放到/home/nginx/logs/newlog/目录下

split -b 500m nohup.out /home/nginx/logs/newlog/

eg:

split -b 50m /home/nginx/logs/newlog/b.log /home/nginx/logs/newlog/

②按文件行数切割大文件:

查询文件行数:

wc -l b.log

2038711 b.log

按50W行切割一个文件:

split -l 500000 -d -a 4 /home/nginx/logs/b.log /home/nginx/logs/newlog/

2.定时备份前一天日志,重新记录当天日志splitlog.sh

this_path=$(cd `dirname $0`;pwd)

cd $this_path

#echo $this_path

current_date=`date -d "-1 day" "+%Y%m%d"`

#echo $current_date

split -b 100m -d -a 4 /home/nginx/logs/nohup.out /home/nginx/logs/newlog/log_${current_date}_

cat /dev/null > nohup.out

3.定时执行

查看定时任务:

crontab -l

编辑定时任务:

crontab -e

0 0 * * * /home/nginx/logs/splitlog.sh

重启定时任务:

sudo service crond restart

补充:

删除10天以前的日志文件,此日期为文件本身的时间,非日志内容时间

#!/bin/sh

find /u02/tomcat/service/logs/ -mtime +10 -name "*.tmp" -exec rm -rf {} \;

find /home/tomcat/webApp/javalogs/ -mtime +10 -name "*.log" -exec rm -rf {} \;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值