Windows删除多个目录中的文件文件顺序,然后使用bat删除n小时

Windows删除多个目录中的文件文件顺序,然后使用bat删除n小时,windows,batch-file,Windows,Batch File,例如,我有n个文件夹 {C:/tst1,C:/tst2,C:/tst3,C:/tst1} 在这些文件夹中,我需要删除创建时间超过5小时的文件,我知道forfile不能用小时删除选项,我还可以使用什么 您可能可以使用批处理文件中的PowerShell进行此操作 根据您提供的信息,您可以尝试以下方法: @PowerShell-NoP“GCI”C:\tst*\*'|?{!$\.PSIsContainer-和($\.LastWriteTime-LT(获取日期).AddHours(-5))}Rm-Wh“&

例如,我有n个文件夹 {C:/tst1,C:/tst2,C:/tst3,C:/tst1}
在这些文件夹中,我需要删除创建时间超过5小时的文件,我知道forfile不能用小时删除选项,我还可以使用什么

您可能可以使用批处理文件中的
PowerShell
进行此操作

根据您提供的信息,您可以尝试以下方法:

@PowerShell-NoP“GCI”C:\tst*\*'|?{!$\.PSIsContainer-和($\.LastWriteTime-LT(获取日期).AddHours(-5))}Rm-Wh“&暂停

这不会删除文件,为了保护您,它只会向您显示它将删除的文件。
如果您对输出感到满意,您可以将行末尾的
-Wh“&Pause
替换为
-Fo”

尝试过那个答案没有用这个问题有三个答案,其中两个我在工作中使用得很成功。用你尝试过的内容更新你的问题。外交部还在他的一条评论中发布了一个答案链接。他的代码通常非常可靠。你也可以用它来计算时差。使用
FOR
命令获取文件的时间戳。然后使用当前时间的日期和时间变量,并将其提供给JTimeStamp以获得时差。