一个比较简单但是比较粗暴的按小时分割日志脚本
#!/bin/bash
Y=` date --date="-1 hour" +%Y`
m=` date --date="-1 hour" +%m`
d=`date --date="-1 hour" +%d`
H=`date --date="-1 hour" +%H `
dir=$Y/$m/$d/
#log日志的位置
logdir=/usr/local/nginx/logs
#服务器ip地址的获取
ip="`/sbin/ifconfig |grep 'Bcast'|awk -F '[ :]' '{print $13}'`"
cd $logdir
mkdir -p www_log/$dir
mkdir -p c_log/$dir
mkdir -p h_log/$dir
mkdir -p lpt_log/$dir
cp -fr www_access.log www_log/$dir/access-$H-$ip.log
cat /dev/null > /usr/local/nginx/logs/www_access.log
cp -fr c_access.log c_log/$dir/access-$H-$ip.log
cat /dev/null > /usr/local/nginx/logs/c_access.log
cp -fr h_access.log h_log/$dir/access-$H-$ip.log
cat /dev/null > /usr/local/nginx/logs/h_access.log
cp -fr lpt_access.log lpt_log/$dir/access-$H-$ip.log
cat /dev/null > /usr/local/nginx/logs/lpt_access.log
#!/bin/bash
Y=` date --date="-1 hour" +%Y`
m=` date --date="-1 hour" +%m`
d=`date --date="-1 hour" +%d`
H=`date --date="-1 hour" +%H `
dir=$Y/$m/$d/
#log日志的位置
logdir=/usr/local/nginx/logs
#服务器ip地址的获取
ip="`/sbin/ifconfig |grep 'Bcast'|awk -F '[ :]' '{print $13}'`"
cd $logdir
mkdir -p www_log/$dir
mkdir -p c_log/$dir
mkdir -p h_log/$dir
mkdir -p lpt_log/$dir
cp -fr www_access.log www_log/$dir/access-$H-$ip.log
cat /dev/null > /usr/local/nginx/logs/www_access.log
cp -fr c_access.log c_log/$dir/access-$H-$ip.log
cat /dev/null > /usr/local/nginx/logs/c_access.log
cp -fr h_access.log h_log/$dir/access-$H-$ip.log
cat /dev/null > /usr/local/nginx/logs/h_access.log
cp -fr lpt_access.log lpt_log/$dir/access-$H-$ip.log
cat /dev/null > /usr/local/nginx/logs/lpt_access.log
本文提供了一个用于按小时分割日志文件的 bash 脚本,该脚本能够将当前小时内生成的日志文件按不同类别(如:www、c、h、lpt)分别存档。
2387

被折叠的 条评论
为什么被折叠?



