我想写一个批处理文件来按时删除文件夹,子文件夹和临时文件。
条件是这样的:
<file name> <date>
dd-mm-yyyy-hh-mm
或dd-mm-yy-hh-mm
答案 0 :(得分:2)
批量可能非常强大,但我不认为你想要的那种日期操作是实用的。
您可以使用FOR
将日期拆分为元素,然后使用SET /A
进行减法,但之后您将需要大量的IF
和{{ 1}}语句用于处理从1月1日午夜的一半减去一小时的情况。
我认为你最好调查VBS或Powershell。
答案 1 :(得分:1)
您可能希望尝试使用此脚本从文件夹中删除超过1小时的文件。
# Script Delete1Hour.txt
var str folder, list, file
cd $folder
lf -n "*" $folder ($ftype=="f") AND ( $fmtime < addtime(diff("-10000")) ) > $list
while ($list <> "")
do
lex "1" $list > $file
system del ("\""+$file+"\"")
done
这是biterscripting。重要的命令是
lf -n "*" $folder ($ftype=="f") AND ( $fmtime < addtime(diff("-10000")) )
告诉biterscripting - 给我$ folder文件夹中的所有条目,其名称与模式“*”匹配,文件类型为“f”(平面文件,不是目录),文件修改时间($ fmtime)更早超过1小时。请参阅http://www.biterscripting.com/helppages/lf.html上的lf命令的文档。
将脚本保存在文件C:/Scripts/Delete1Hour.txt中,将其作为
运行script "C:/Scripts/Delete1Hour.txt" folder("C:/testfolder")
它将删除C:/ testfolder中超过1小时的所有文件。