windows下面Nginx日志切割

Nginx本身并不支持日志切割,那么就会造成日志非常的大,为了解决这个问题我们用到了windows的计划任务和dos命令。具体思路:

1.写一个dos文件,通过windows的计划任务定时执行(每天执行一次)

2.dos命令里面将根据日期来移动文件

3.移动前停止nginx,移动成功后启动nginx

dos命令如下:

复制代码
@echo off
cd D:\Program Files\nginx-1.14.2
taskkill /F /IM nginx.exe > nul
rem date格式:Wed 11/02/2016
set today=%date:~0,4%-%date:~5,2%-%date:~8,2%
set dir=D:\Program Files\nginx-1.14.2\logs\backup
md "%dir%"

rem access log 
move "D:\Program Files\nginx-1.14.2\logs\access.log" "%dir%\access-%today%.log"

start nginx

pause
复制代码

 说明:

1.taskkill就是杀死进程

2.因为目录中存在空格,因此需要用双引号将目录引起来

3.start nginx就是启动nginx

4.%date%用于获取日期,后面的参数类似于substring(position,len)

5.@echo off表示后面的代码是一个代码块,而非一行一句,主要是因为定义了变量这些

6.pause表示暂停,这样dos窗体就不会一闪而过,我们能够清晰的看到执行结果

posted @   段江涛IT  阅读(3278)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗
页脚HTML代码
点击右上角即可分享
微信分享提示