[批处理] 找到几天前的文件 并删除

来源:互联网 发布:苹果经常无法加入网络 编辑:程序博客网 时间:2024/04/26 20:08

通过forfiles命令找到几天前的数据。

forfiles的几个参数:

/P  可是搜索的路径。在我们这里就是要在哪个目录寻找要删除的文件

/M 根据搜索掩码搜索文件。默认为*,我们要删除某时间以前的文件。我们只关心时间。

/D 文件修改时间在某个时间之前或者之后。-200 表示200天之前的文件。

/C 表示为每个文件执行的命令,这里是要删除该文件所以为 “cmd /c del /F /s /q @file” 。其中变量@file表示该文件名。

综上所述,得出下列脚本:


@echo offecho Del file :::::::::forfiles /P D:\test\DATA /M * /S /D -200 /C “cmd /c del /F /s /q @file”echo doneecho . &  pase


在linux下可以用find 命令来查找:
find ./ -ctime 1 -name “*mail” -exec rm {} \;


删除一天前修改的文件。
 
XP
@echo off&setlocal enabledelayedexpansion
cd/d "c:\temp"
rem 在引号里面写上要删除的文件夹所在目录,这里默认为c:\temp
if %errorlevel%==1 pause&exit
echo set arg=wscript.arguments>temp.vbs
echo wscript.echo datediff("d",now(),arg(0))>>temp.vbs
for /f "delims=" %%i in ('dir /ad/b *') do (
for /f "delims=" %%a in ('cscript.exe /nologo "temp.vbs" "%%~ti"') do set d=%%a
if !d! lss -15 (
del /q/f/s/a "%%i\*.*"
rd /s/q "%%i" ))
del/q/f temp.vbs
原创粉丝点击