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

以前做到最多的定时我们就是定时备份功能了,我们常用利用定时功能来备份网站数据或备份数据库了,下面我来给(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 设置成可执行权限,然后放到定时任务中去执行即可。

时间: 2024-09-09 13:47:19

Windows和Linux下定时删除某天前的文件的脚本_DOS/BAT的相关文章

Linux下定时删除过期文件的方法

在管理Linux下的文件时,我们通常会有定时删除过期文件的这个需求.比如定时删除超过指定时间的日志文件,不然时长越久,你的日志文件占用的空间就越大,那离爆磁盘不远了,还有也解决网站方便的需求,比如我们建立的淘宝客api的程序,为了提高商品页的访问速度,我们需要进行关键数据的缓存,也需要定时删除过期的缓存文件,如果是使用PHP程序扫描删除,那将得不偿失.那么如何在Linux下定时删除过期文件?这里小编简单介绍下,方便需要的朋友. 在linux下删除过期文件,很简单,用如下命令: 复制代码代码如下:

Linux与Windows中定时备份与定时删除某天前的文件

无论是在windows下还是linux下,很多的日志文件如果不定时删除会充满硬盘,所以可以分别写个脚本定时处理一下. 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 *.l

Windows和Linux下生成以当前时间命名的文件

  生成以当前时间命名的文件对于当今两大主流系统都十分有用,在 Windows.Linux 操作系统,分别利用BAT批处理文件和Shell脚本,生成类似"20110228_082905.txt"以"年月日_时分秒"命名的文件. Windows BAT批处理文件: @echo off set time_hh=%time:~0,2% if /i %time_hh% LSS 10 (set time_hh=0%time:~1,1%) set filename=%date:

使用vbs脚本定时删除N天前的文件_vbs

脚本放在定时任务里代替服务定时执行一些操作比较方便,下面是实现删除文件夹下N天前创建的文件的vbs脚本,在配置文件 DelFolderList.txt 中配置要删除的文件路径,ONLY-DEL-FILES 下的路径 是只删除其下的文件,不删除其内的子目录的文件.DEL-FOLDER-FILES下的路径 是删除其内文件及其子目录内的文件,子目录为空时删除目录,删除的文件list 放在log文件夹内.例配置文件DelFolder.txt 内容如下: ONLY-DEL-FILESE:\Code\tes

怎样在Windows和Linux下写相同的代码

目前,Linux在国内受到了越来越多的业内人士和用户的青睐.相信在不久的将来,在国内为Linux开发 的应用软件将会有很大的增加(这不,金山正在招兵买马移植WPS呢).由于未来将会是Windows和Linux两强鼎立的格局,怎样能够使得开发的软件保持最大的可移植性就成了一个很重要的问题.小弟经过一段时间的摸索,找到了这个问题的圆满解答. 在Linux下,所有的开发工具和库都属于自由软件,可以免费获得并且功能强大.如果这些工具和库都有相应的Windows版,那么我们就能够在Windows和Linu

Oracle exp query条件检索在WINDOWS和LINUX下的命令区别

今天因为业务需要,运行了EXP的条件导出,发现WINDOWS和LINUX下有些差别,主要区别在于敏感字符,实例如下: LINUX: exp us/pass TABLES=\(t_ec_event\) file=/tmp/test.dmp QUERY=\"WHERE eventid =\'40288a2627f491080127fab7f17232b4\'\" WINDOWS: exp us/pass@test TABLES=(t_ec_event) file=test.dmp QUER

windows和linux下androidSDK是否通用?

  最新想搬到Linux上学习.可是AndroidSDK那玩意儿实在太大.咱们的信息长城又太高.想用sdkManager下载完整的sdk基本是不可能的.除非你网速好到没朋友.. 说到信息长城.我不得不多说两句.. 搞IT的想必最近都感觉到了.长城又高了.又厚实了..对我们这些不想用付费VPN的人来讲.实在是苦不堪言 虽说道高一尺.总会有工具能帮我们翻出去.可是.. 我只想说.在这个信息化时代.把信息长城修筑的这么高.这么厚.真的好吗?真的是在保护我们吗? 如果真到了国内无论使用任何办法都翻不出去

Linux下Oracle删除用户和表空间的方法_oracle

本文实例讲述了Linux下Oracle删除用户和表空间的方法.分享给大家供大家参考,具体如下: 1.删除某个用户 SQL> conn /as sysdba Connected. SQL> drop user userName cascade; 用户已删除 如果用户无法删除,并报错: ERROR at line 1: ORA-01940: cannot drop a user that is currently connected 通过查看用户的进行,并kill用户进程,然后删除用户. SQL&

socket在windows下和linux下的区别

原文:socket在windows下和linux下的区别 1)头文件 windows下winsock.h/winsock2.h linux下sys/socket.h    错误处理:errno.h  2)初始化 windows下需要用WSAStartup WSADATA wsaData;         err = WSAStartup(0x202,&wsaData); if ( err != 0 ) { return 0; } else if ( LOBYTE( wsaData.wVersio