首页 > 编程 > BAT > 正文

Windows和Linux下定时删除某天前的文件的脚本

2020-06-09 14:24:45
字体:
来源:转载
供稿:网友

以前做到最多的定时我们就是定时备份功能了,我们常用利用定时功能来备份网站数据或备份数据库了,下面我来给(www.jb51.net)大家介绍几个Linux与Windows中定时删除某天前的文件方法,这个与备份有点区别,但大同小义了。

Windows下bat文件内容如下;

复制代码 代码如下:

@echo off
forfiles -p "D:/servers/apache2.2/logs" -s -m *.log -d -15 -c "cmd /c del @path"
forfiles -p "D:/servers/mysql/logs" -s -m *.log -d -15 -c "cmd /c del @path"

可以将上面的目录换成指定的目录,*.log可以筛选一下文件格式,-d后面的参数为负数表示多少天之前的,正数是多少天之后的。保存成bat文件,然后在Windows计划任务里面设置每天执行的时间就可以了。

Linux下面的shell文件内容如下:

复制代码 代码如下:

#!/bin/bash
 # 删除30天之前的文件
 find /var/usr/nginx/logs/ -mtime +30 -type f -name /*.gz | xargs rm -f

同样的将上面的目录换成自己指定的目录,后面的/*.gz表示文件扩展名,-mtime后面的参数与上面Windows的相反,正数表示多少天之前的文件。将上面的内容保存成.sh并使用chmod +x 设置成可执行权限,然后放到定时任务中去执行即可。

您可能感兴趣的文章:

linux下mysql自动备份数据库与自动删除临时文件Linux下自动删除归档日志文件的方法linux删除大量文件的6种方法Linux 中清空或删除大文件内容的五种方法Linux中删除文件内空行的4种方法linux实现除了某个文件或某个文件夹以外的全部删除linux实现自动删除最旧的几个文件详解
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表