数据库每天备份文件,然而只需要保留七天的备份即可,编写一个批处理脚本文件自动删除七天前的文件并设置定时任务 自动删除文件需要用到forfiles命令 forfiles参数:/p 指定的路径/s 包括子目录/m 查找的文件名掩码/d 指定日期,有绝对日期和相对日期, 此处-7指当前日期 的7天前 /c 运行的命令行 表示为每个文件执行的命令.命令字符串应该用双引号括起来. 默认命令是 "cmd /c echo @file".下列变量 可以用在命令字符串中: @file -
使用windows2003下的内置命令forfiles配合计划任务可以实现自动删除n天前的文件. windows2003中设定自动执行的计划任务很简单. 一.脚本编写 forfiles命令用法: Forfiles 从文件夹或树中选择要进行批处理的文件. 语法 forfiles [/p Path] [/m SearchMask] [/s] [/c Command] [/d[{+ | -}] [{MM/DD/YYYY | DD}]] 参数 /p Path 指定 Path,表明要从哪里开始搜索.默认的
---恢复内容开始--- 下是备份的批处理,添加到"计划任务"中,设定时间自动运行 复制代码 代码如下:@echo off rem 格式化日期 rem date出来的日期是"2006-02-22 星期三",不能直接拿来使用,所以应该先格式化一下 rem 变成我们想要的.date:~0,4的意思是从0开始截取4个字符 set d=%date:~0,4%%date:~5,2%%date:~8,2% rem 设定压缩程序路径,这里用的是WINRAR的rar.exe进行打包
使用windows2003下的内置命令forfiles配合计划任务可以实现自动删除n天前的文件. windows2003中设定自动执行的计划任务很简单. forfiles命令用法: Forfiles 从文件夹或树中选择要进行批处理的文件. 语法 forfiles [/p Path] [/m SearchMask] [/s] [/c Command] [/d[{+ | -}] [{MM/DD/YYYY | DD}]] 参数 /p Path 指定 Path,表明要从哪里开始搜索.默认的文件夹是当前工
Linux是一个很能自动产生文件的系统,日志.邮件.备份等.但是对于一些时间久远的日志可以设置定时任务删除.语句写法:find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} \;例1:find /usr/local/backups -mtime +30 -name "*.*" -exec rm -rf {} \;将/usr/local/backups目录下所有30天前带"."的文件删除find:linux
下面的脚本是删除/home目录下7天前的文件 #!/bin/bash find /home/ -type f -mtime +7 -exec rm -f {} \; 把这个脚本保存在/tmp目录下,命名为:clearfile.sh 加入计划任务 crontab -e 10 22 * * * /bin/sh /tmp/clearfile.sh 这个表示为,每天22点10分执行这个脚本.
公司在线上有一个监控系统,每天都会制造大量文件,然后就需要删除规定天数以前的文件,用来保证硬盘不会满造成服务中断. 语句也很简单, #delete 15 days ago picture files find /home/monitoring/ -mtime +15 -exec rm -rf {} \; -mtime -n +n 按文件更改时间来查找文件,-n指n天以内,+n指n天以前 -exec: find命令对匹配的文件执行该参数所给出的shell命令.相应命令的形式为'command' {
备注:1.如XP下因为没有forfiles.exe,拷贝windows2003下的forfiles.exe文件到XP的system32目录即可使用forfiles命令. 2.该文档适用于windows客户端操作系统xp win7/8/10,windows服务器端操作系统 server 2003/2008/2012/2016.3.如有错漏,烦劳指出,谢谢! forfiles.exe及帮助 描述: 选择一个文件(或一组文件)并在那个文件上执行一个命令.这有助于批处理作业. 语法: forf
项目要求 1.自动打包某一个文件目录, 2.自动将打包文件放置至一个指定目录 3.自动清除5天前的文件: 实现: 1.使用crontab 进行定时备份 2.使用tar压缩 3.使用shell算出日期 ,remove 旧文件 4. 在/usr/sbin目录中加入备份文件:baksvn #!/bin/sh rq=`date +%Y%m%d` rm -f /home/svnbak/`date -d '-5 days' +%Y%m%d`.tar.gz tar zcvf /home/svnbak/$rq.