您的位置:首页 > 运维架构 > Nginx

nginx日志进行切割转

2011-11-21 18:34 405 查看
http://hi.baidu.com/zhenuu/blog/item/d88e932b2be340ede7cd40f6.html

#!/bin/bash

mkdir -p /usr/local/nginx/logs/days

#手工对nginx日志进行切割转换

/usr/sbin/logrotate -vf /etc/logrotate.d/nginx_search

#当前时间

time=$(date -d “yesterday” +”%Y-%m-%d”)

#进入转储日志存放目录

cd /usr/local/nginx/logs/days

#对目录中的转储日志文件的文件名进行统一转换

for i in $(ls ./ | grep “^\(.*\)\.[[:digit:]]$”)

do mv ${i} ./$(echo ${i}|sed -n ‘s/^\(.*\)\.\([[:digit:]]\)$/\1/p’)-$(echo $time)

done

#对转储的日志文件进行压缩存放,并删除原有转储的日志文件,只保存压缩后的日志文

for i in $(ls ./ | grep “^\(.*\)\-\([[:digit:]-]\+\)$”)

do tar jcvf ${i}.bz2 ./${i}

rm -rf ./${i}

done

#只保留最近7天的压缩转储日志文件

find /usr/local/nginx/logs/days/* -name “*.bz2″ -mtime 10 -type f -exec rm -rf {} \;

本文出自 “皓月无痕泽哥地带” 博客,请务必保留此出处http://lzspf.blog.51cto.com/843701/721197
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: