windows定时备份日志文件

前言

之前项目因为各种原因没有上 CI/CD,也没有部署什么 nginx 管理工具,再加上 nginx 部署在 windows server 上,面对日积月累不停膨胀的日志文件,需要一个定时脚本处理自动分割日志文件。

本篇文章主要讲解如何在 windows 上创建定时任务,以及如何编写一个简单的 bat 脚本

Windows 备份脚本

注意:

  1. 路径一定要写绝对路径,否则在定时任务中相对路径会认为是C盘
  2. nginx 一定要重启,否则日志文件将不会自动生成
less 复制代码
@echo off

:: 切换字符编码为 utf-8
chcp 65001

set log_date=%date:~3,4%%date:~8,2%%date:~11,2%
set path=E:\dev_env\nginx-1.16.1\logs-bak\%log_date%

:: 创建文件夹
md %path%

:: 备份文件
copy E:\dev_env\nginx-1.16.1\logs %path%

:: 删除文件
erase /Q E:\dev_env\nginx-1.16.1\logs

nginx -s reload

Windows 定时任务

一、打开控制面板,点击管理工具

二、点击任务计划程序

三、创建一个新任务

注:可以先创建一个 myTask 文件夹,统一维护用户创建的任务

四、填写常规配置

五、添加触发器

六、配置定时器

七、新建触发任务

八、配置任务脚本

注:如果脚本中使用的是相对路径,则需要配置【起始于】的初始路径

九、配置脚本中的相对路径

脚本:

bash 复制代码
@echo off

:: 切换字符编码为 utf-8
chcp 65001

set log_date=%date:~3,4%%date:~8,2%%date:~11,2%
set path=.\logs-bak\%log_date%

:: 创建文件夹
md %path%

:: 备份文件
copy .\logs\*.log %path%

:: 删除文件
erase /Q .\logs\*.log

nginx -s reload

定时任务

相关推荐
品尚公益团队8 分钟前
C#在asp.net网页开发中的带cookie登录实现
前端·c#·asp.net
阿米亚波1 小时前
【EVE-NG 实战】防火墙基础(VLAN · VRRP · NAT · ACL · 静态路由)
运维·网络·笔记·网络协议·计算机网络·网络安全·运维开发
没有了遇见1 小时前
AI Agent 是什么?—— 一文理解 LLM、Memory、Skills、Tools、MCP、Workflow,Context
android·前端·程序员
日取其半万世不竭1 小时前
云服务器迁移怎么少停机?DNS 切换前后的完整清单
运维·服务器
后台开发者Ethan1 小时前
setState组件更新
前端·javascript·react
谙忆10242 小时前
大文件上传实战:前端分片、断点续传、秒传与并发控制怎么落地
前端
FREEDOM_X2 小时前
Linux 多线程编程——总结
java·linux·运维·ubuntu
IguoChan2 小时前
4. d2l — 模型选择、欠拟合和过拟合
后端
名字还没想好☜2 小时前
Docker 多阶段构建:把镜像从 1.2GB 砍到 15MB
运维·docker·容器·多阶段构建·镜像优化
祸心依旧2 小时前
Visual Studio 五月更新 —— 计划、评审、优化
运维·人工智能·visual studio