2016-05-14 478 views
0

如何删除超过X小时或分钟的文件?如何删除超过X小时或分钟的文件?

我有一个目录这是老年人超过1天删除文件的批处理文件,但我需要的分钟和小时。

REM Remove files older than 1 day 
forfiles /p "C:\Users\Username\Downloads" /s /m *.* /c "cmd /c Del @path" /d -1 
+2

重复[查找文件是否超过4小时在批处理文件](http://stackoverflow.com/questions/6928552/find-out-if-file-is-older-than-4-hours-在批处理文件)。 – Mofi

回答

2
@echo off 

for /f "tokens=* delims=" %%# in ('FileDateFilterJS.bat "." -hh -5') do (
    echo deleting "%%~f#" 
    echo del /q /f "%%~f#" 
) 

pause 

替换 “”与你的工作目录 这里是FileDateFilterJS.bat通过npocmaka

https://github.com/npocmaka/batch.scripts/blob/master/hybrids/.net/FileTimeFilerJS.bat

给IF这不起作用给下面的代码射门虽然上面的代码工作对我来说,下面的代码将工作天数而不是小时数。

forfiles -p "C:\what\ever" -s -m *.* /D -<number of days> /C "cmd /c del @path" 

Batch file to delete files older than N days

需要注意的是,如果你想超过10天以上的文件,你需要指定-d “-10”。 -ve意思是“比...更老”,+ ve意思是“比...更新”。您还可以使用 指定DDMMYY或-DDMMYY格式作为-d的参数。

如果您的计算机上没有安装forfiles,请将其从任何 Windows Server 2003复制到位于%WinDir%\ system32的Windows XP计算机。 这是可能的,因为EXE在Windows Server 2003和Windows XP之间完全兼容。

Batch file to delete files older than N hours or minutes

这可能帮助了。

希望我帮了忙。

+0

我不需要N天,我需要几小时或几分钟! –

+0

更新了几小时... – Rishav

+0

和我在哪里插入文件的位置?[目录] rg:“C:\ Users \ Username \ Downloads” –

1

发表Rishav工具/答案应该帮助你,尽管他们不那么频繁的测试(发表了他此行应该工作,虽然)。为了防弹您的查询可能需要一些更多的FRE命令行开关。 下面是与WSH version of filetimefilter一个例子:

call filetimefilterjs.bat "C:\somedir" -hh -10 -direction after -filetime created 

这将显示文件c:\somedir更新超过10小时(但不是递归)。希望这会有所帮助。

相关问题