$(date +%d) 获取当月第几天,如5月18日,就会取出来是18
这样,可以做到按月循环,只保留一个月的日志,而不用担心去清理过期的日志了
脚本请在crontab中设置执行,如在每天23点59分是执行日志切割脚本
59 23 * * *
以下红色字是脚本内容:
savepath_log保存日志的路径
nglogs当前nginx默认的日志,如果你是装在/usr/local/nginx目录,那日志就和脚本上一样
#/bin/bash
如果直接复制的话,要注意字体编码的问题,很多windows上的脚本上传到linux就出错,还是因为编码问题
日志下载:http://www.linuxyw.com/scripts/nginxlog.sh
建议直接在linux中用wget下载,如:
wget http://www.linuxyw.com/scripts/nginxlog.sh
本文来自linux系统运维:http://www.linuxyw.com/a/Shell/Shell/20130518/388.html