windows下自动删除过期文件的脚本
windows下自动删除过期文件的脚本
前言:
比如日志文件每天都产生,时间长了就会有很大的一堆垃圾。整理一下 定时删除文件的方法。
正文:
Windows:
定时删除tomcat日志和缓存。可以保留天数
forfiles /p "e:\Program Files\Tomcat 7.0\logs" /s /m *.log /d -5 /c "cmd /c del @path"
forfiles /p "e:\Program Files\Tomcat 7.0\logs" /s /m *.txt /d -5 /c "cmd /c del @path"
**** 红色的是目录。
绿色是以.log和.txt后缀格式的文件将会被删除。
蓝色是保留的天数,保留天数之内的日志和缓存不会被删除。
创建一个bat文件,按需求修改以上的批处理命令,把修改后的命令放入bat文件, 然后保存。
再通过系统上的任务计划,根据需求自定义创建任务,最后系统自动执行任务,达到自动删除tomcat日志和缓存的目的。
补充说明:
在windows server 2003系统中有一个forfiles命令能够查找满足指定条件的文件,下面是这个命令的用法。
forfiles /p <目标目录名> /d <天数> /c <执行的命令>
例:forfiles /p "D:bigantlogs" /s /m *.* /d -3 /c "cmd /c del @path"
解释一下相关参数及命令
/p : 指定开始搜索文件的位置,如果不指定则默认为当前目录。
/m : 文件查找所使用的通配符如代码中的"*.log"则为所有日志文件,当然也可以指定诸如"manmee_*.log"这样以manmee开头的所有日志文件。如果不指定此参数则默认为"*.*"。
/d [{+|-}][{|}] : 指定想选择文件的最后修改时间,上文中用了 "/d -7" 表示所有以当天为基础,7天以前的文件。当然这里还可以指定具体时间,例如:"/d -08/18/2009"这样所有早于2009年8月18日的文件。注意指定的时间必须是"MM/DD/YYYY"的格式。
/c 对所有文件以此执行指定的命令,命令体须在双引号(")内。
补充: 利用windows的任务计划自动重启tamcat程序:
- 单击“开始”按钮,然后依次选择“程序”→“附件”→“系统工具”→“任务计划”(或者是“设置”→“控制面板”→“任务计划”),启动“添加任务计划”。
2.在弹出页面中,选择“创建基本任务”,效果如下,输入名称、描述。下一步
3.创建触发器,选择自动执行这个任务的时间频率(如每天、每星期、每月、一次性、每次启动计算机时、每次登录时等),然后单击“下一步”按钮。
4.设置此任务计划需要执行的脚本或程序(自定义脚本)。
5.点击完成,任务完成。可以在该定时任务中查看详情。
Linux:
定时清理7天前的Tomcat日志脚本
#!/bin/bash
logs_path="/tomcat/tomcat-token/logs"
find $logs_path -mtime +7 -name "localhost_access_log.*.txt" -exec rm -rf {} \;
find $logs_path -mtime +7 -name "catalina.*.log" -exec rm -rf {} \;
find $logs_path -mtime +7 -name "manager.*.log" -exec rm -rf {} \;
find $logs_path -mtime +7 -name "host-manager.*.log" -exec rm -rf {} \;
find $logs_path -mtime +7 -name "fileservice.log.*" -exec rm -rf {} \;
windows下自动删除过期文件的脚本的更多相关文章
- SqlServer数据库同时备份到两台服务器上(并自动删除过期文件)
数据库同时备份到两台服务器上(并自动删除过期文件) 举例 :(本地)服务器A: IP :192.168.1.1 (远程)服务器B: IP :192.168.1.2 数据库版本:SqlServer200 ...
- Linux下自动删除过期备份和自动异地备份
每天自动删除过期备份 首先编写一个简单的Shell脚本DeleteExpireBackup.sh: #!/bin/bash # 修改需要删除的路径 location="/database/b ...
- windows下自动删除n天前的文件
使用windows2003下的内置命令forfiles配合计划任务可以实现自动删除n天前的文件. windows2003中设定自动执行的计划任务很简单. 一.脚本编写 forfiles命令用法: Fo ...
- windows服务器自动删除日志文件
https://blog.csdn.net/u010050174/article/details/72510367 步骤: 1.新建 一个bat脚本 2.添加到window执行计划中,进行每日执行. ...
- windows下递归删除指定文件和文件夹
//删除文件del *.后缀 /s//删除文件夹for /r 目录 %a in (文件夹名\) do @if exist "%a" rd /s/q "%a"
- SQLServer自动备份和自动删除过期文件
以下为转载的文章: 点击下一步: 自定义名称和说明,点击更改: 点击确定,下一步 1.备份: 选择备份,下一步,再下一步,选择需要备份的数据库: 选择备份文件存放的路径: 点击下一步,选择系统产生的报 ...
- apache日志配置一例,包括指定存储目录与格式、自动删除过期的日志文件
有需要的朋友可以参考下(http://www.nanke0834.com) 1.vim /usr/local/apache2/conf/extra/httpd-vhosts.conf 添加或修改为:复 ...
- bat删除过期文件(FORFILES)
关键词:bat删除过期文件,bat,FORFILES 原文:https://blog.csdn.net/sandy9919/article/details/82932460 --最佳实践 :: IIS ...
- windows下常用的几个批处理脚本
1.windows下对比两个文件内容,有差异则执行一个任务: 适用场景:比如你的数据库备份结果的日志每天会形成一个文件,如下图,你可以通过此脚本检测到文件的变化,并执行发送告警邮件通知你数据库备份异常 ...
随机推荐
- Vue.js的初步使用
1.声明式渲染 <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...
- 获取Gitlab项目的Token
获取Gitlab项目的Token 1.打开所需要Token的项目的主页进入CI/CD setting Setting -> CI/CD -> Genneral pioelines sett ...
- BZOJ4437 : [Cerc2015]Looping Labyrinth
从$(0,0)$开始BFS$2\times10^6$步,那么迷宫的形状有三种: 1.走不完$2\times10^6$步,直接判定即可. 2.可以走到$(n,0)$以及$(0,m)$,那么直接把询问点平 ...
- JS内存管理
背景: 分配给Web浏览器的内存通常比分配给电脑桌面的内存少,因为担心运行JS的网页耗尽全部系统内存而导致系统崩溃 内存限制问题不仅影响给变量分配内存,还会影响调用栈以及在一个线程中能够同时执行的语句 ...
- app的创建和注册
APP是用来存放代码的 创建APP 命令行创建,切换到项目目录下 python manage.py startapp appo1 #app01为项目名,创建完刷新即可 目录结构 把函数放到views后 ...
- iOS自动布局的学习
Autolayout: 最重要的两个概念: 约束:对控件位置和大小的限定条件 参照:对控件设置的约束是相对于哪一个视图而言的 自动布局的核心计算公式: obj1.property1 =(obj2.pr ...
- js实现60s倒计时效果
适用于获取验证码等其他场景,下面代码直接粘贴句可以使用 // 60s获取验证码的js与html var timer = null; var count = 60; $('.box>button' ...
- Mybatis批量插入返回自增主键(转)
我们都知道Mybatis在插入单条数据的时候有两种方式返回自增主键: 1.对于支持生成自增主键的数据库:useGenerateKeys和keyProperty. 2.不支持生成自增主键的数据库:< ...
- ES6_入门(1)_let命令
1. let声明变量只在let命令所在的代码区内有效. "use strict"; /*如果不加"use strict";会报错:Uncaught Syntax ...
- 几个例子弄懂JS 的setInterval的运行方式
这篇文章主要介绍了js的setInterval方法的用法以及示例,非常的有用,这里推荐给小伙伴们. setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口 ...