shell切割nginx日志文件

博客的服务器日志不多,当时太懒没有去给切割一下,今天没事儿顺手写个脚本切割一下方便查阅。

直接上代码

文件名:slice_nginx_log.sh

 
#!/bin/bash
declare log_path="/home/wwwlogs/blog.access.log";#nginx日志的路径
declare save_path="/home/wwwlogs/blog";#切割后要保存的路径
mkdir -p ${save_path}/$(date -d yesterday "+%Y")#生成切割后要保存的目录按年
chmod -R 755 ${save_path}/$(date -d yesterday "+%Y")#给目录权限
mv ${log_path} ${save_path}/$(date -d yesterday "+%m%d")_log#把日志剪切到要保存的目录
rm -rf ${log_path}#删除nginx的旧日志
/usr/local/nginx/sbin/nginx -s reload #基本后reload一下nginx就行了

简简单单的几行代码完工。

最后把它加入到计划任务:0 0 * * * /root/slice_nginx_log.sh 这样就会在每天零晨执行一次了,当然这个时间的话你就要这样子配置,这个与你的脚本中的时间有关系,如果你非要在当天23:59:59秒分割日志的话你就把yesterday改成now

当然linux自带的工具logrotate也可以做到切割日志,还很好用。






Tags javascript linux nginx

留言(0)

评论