新建一个脚本

#!/bin/bash
#2012-9-29  gary

savepath='/data/log/nginx'
nglogs='/usr/local/nginx/logs'

mkdir -p $savepath/$(date +%Y-%m)
mv $nglogs/access.log $savepath/$(date +%Y-%m)/access.$(date +%Y-%m-%d).log
mv $nglogs/error.log $savepath/$(date +%Y-%m)/error.$(date +%Y-%m-%d).log
kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`

在crontab -e里面添加一行

0 4 * * * /usr/local/nginx/logs/nginx_log.sh

 

说明:

savepath是指日志转移的位置,nglogs是指日志最初位置,kill行是指实现日志的自动切换功能,最后一行是每天凌晨4点执行一次切割