要求:以天为单位进行日志文件的切割,如host.access_20150915.log, 日志保留最近10天的, 超过10天的日志文件则进行删除.

nginxcutlogs.sh脚本内容:

#!/bin/bash
# move host.access.log to host.access_yyyymmdd.log
logs_path="/home/dev/nginx/logs/"
mv ${logs_path}access.log ${logs_path}access_$(date -d "yesterday" +"%Y%m%d").log
mv ${logs_path}host.access.log ${logs_path}host.access_$(date -d "yesterday" +"%Y%m%d").log
kill -USR1 `cat /home/dev/nginx/logs/nginx.pid`
# delete all host.access_20xxxxxx.log which overtime 20 days
find ${logs_path} -name 'host.*.log' -type f -mtime +20 -exec rm {} \;
find ${logs_path} -name 'access_*.log' -type f -mtime +20 -exec rm {} \;

使用crontab进行把上述脚本发布到定时任务, 每天凌晨0点0分1秒定时执行脚本

1 0 * * * /bin/bash /home/dev/nginx/nginxcutlogs.sh

效果:

最新文章

  1. js html 一些技巧
  2. lucas 定理学习
  3. js的in运算符与instanceof运算符
  4. 手机上的频段GSM GPRS分别是什么
  5. oracle 创建索引思考(转)
  6. java多线程系列(一)
  7. (二)Javascript面向对象编程:构造函数的继承
  8. 实现手写数字识别(数据集50000张图片)比较3种算法神经网络、灰度平均值、SVM各自的准确率—Jason niu
  9. 运用Zabbix实现内网服务器状态及局域网状况监控(1) —— Zabbix介绍
  10. C++ new 和malloc 区别
  11. SOA与微服务的区别
  12. GridView创建菜单栏
  13. Linux学习笔记:Shell脚本学习
  14. 9 tensorflow提示in different while loops的错误该如何解决
  15. 2017秋软工 —— 本周PSP
  16. Oracle入门笔记 ——启动进阶
  17. Linux内核中的jiffies及其作用介绍及jiffies等相关函数详解
  18. [css 实践篇]CSS中的尺寸单位
  19. zabbix3.0的安装
  20. java.nio.ByteBuffer中flip、rewind、clear方法的区别

热门文章

  1. js实现转盘抽奖
  2. 【Pyhton 】 装饰器
  3. 2020-2021-1 20209307 《Linux内核原理与分析》第八周作业
  4. 啊!Java虚方法
  5. 你真的了解Python自动化吗?这篇文章可以让你了解90%
  6. eclipse 创建自己的Maven项目(超详细)
  7. Dotnet Core多版本API共存的优雅实现
  8. 容器编排系统K8s之Volume的基础使用
  9. net core cap结合redis+数据库实现最终一致性
  10. ASP.NET Core 3.1使用Swagger