Window通过任务计划程序 定期删除文件(log日志等)脚本

2023-12-28 10:51:44

前言

由于Nacos在运行过程中会有比较多的log日志,单纯在配置文件中禁止输出也可,但在生产环境中不大适合,对此需要定期进行删除!

如图所示,存储2年的日志已经有几百G文件
在这里插入图片描述

1. 脚本文件

对应的脚本文件如下:

forfiles /p "D:\nacos-server-1.1.3\nacos\bin\logs" /s /m *.log /d -7 /c "cmd /c del @path"

大致的参数如下:

  • forfiles: 用于对文件进行批处理的命令。
  • /p "绝对路径": 指定 forfiles 开始搜索的路径。
  • /s: 表示搜索应该是递归的,包括子目录。
  • /m *.log: 指定文件掩码以过滤文件。在这里,它查找扩展名为 .log 的文件。(如果删除其他可自行补充)
  • /d -30: 指定要包括在搜索中的文件的最大年龄。在这里,它包括在当前日期基础上30天前的文件。(如果删除多少天前可自行修改)
  • /c "cmd /c del @path": 指定对每个找到的文件执行的命令。这里使用 cmd /c del @path 删除每个文件。@path 代表文件的完整路径。

另一种脚本格式就是提取其关键变量,好定义修改:(大同小异)

@echo off
set SrcDir=E:\WORK\Git
set DaysAgo=5
forfiles /p %SrcDir% /s /m *.* /d -%DaysAgo% /c "cmd /c del /f /q /a @path"

因此,该命令的整体含义是查找指定目录及其子目录中所有30天前的 .log 文件,并使用 del 命令删除它们。

请确保谨慎使用,因为它会永久删除文件。如果要首先测试命令而不实际删除文件,可以将 del 替换为 echo 以查看将要删除的文件列表。

2. 执行位置

位于Window中的定时删除的启动程序在菜单栏中搜索:任务计划程序

对应的位置如下:

在这里插入图片描述

创建好之后进行命名,并在触发器中执行该程序(多久一次):

在这里插入图片描述

在操作栏中添加脚本文件:

在这里插入图片描述

确定执行之后,当到达指定的时间内,电脑自动执行脚本:

在这里插入图片描述

最后发现文件如下:

在这里插入图片描述

文章来源:https://blog.csdn.net/weixin_47872288/article/details/135233163
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。