如果一台WEB服务器跑了很久,那么它的日志文件也会越来越大,这时候我们就需要做日志切割,防止日志文件占用过多的服务器硬盘空间
思路:用date命令打印当前系统时间,在每天凌晨00:00时间进行切割并压缩打包
1:编写切割日志的脚本
[root@ghs ~]# vim /usr/local/sbin/nginx_logrotate.sh
#!/bin/bash
d=`date -d "-1 day" +%F`
[-d /tmp/nginx_log ] || mkdir /tmp/nginx_log
mv /tmp/access.log /tmp/nginx_log/$d.log
/etc/init.d/nginx reload > /dev/null
cd /tmp/nginx_log
gzip -f $d.log
2:执行脚本,加-x输出显示
[root@ghs ~]# sh -x /usr/local/sbin/nginx_logrotate.sh
++ date -d '-1 day' +%F
+ d=2017-06-20
+ '[-d' /tmp/nginx_log ']'
/usr/local/sbin/nginx_log.sh: line 3: [-d: command not found
+ mkdir /tmp/nginx_log
+ mv /tmp/access.log /tmp/nginx_log/2017-06-20.log
+ /etc/init.d/nginx reload
+ cd /tmp/nginx_log
+ gzip -f 2017-06-20.log
3:将脚本加入,计划任务列表
[root@ghs ~]# crontab -e
00 00 * * 1-7 /usr/local/sbin/nginx_logrotate.sh
让它每天凌晨0点0分执行脚本
4:查询计划任务
[root@ghs ~]# crontab -l
00 00 * * 1-7 /usr/local/sbin/nginx_logrotate.sh
原文地址:https://www.cnblogs.com/douyi/p/11579816.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。