gpt4 book ai didi

windows - 在 Windows 中使用批处理文件删除早于 x 天的文件

转载 作者:可可西里 更新时间:2023-11-01 11:49:02 24 4
gpt4 key购买 nike

我一直在尝试编写一个批处理文件来删除早于 x 天数的文件。我有一个备份目录 E:\Backup2,其中包含许多子文件夹 AlrescoPostgresSybase .

这些子文件夹包含不同的文件内部结构,但我认为这不会影响脚本,因为我只需要它查看 Backup2 目录中的每个文件,如果它是早于 x 天,然后删除该文件。

到目前为止,我有以下内容,但我无法让它工作:

FORFILES /P "E:\Backup2" /S /D -2 /C "CMD DEL /F /Q @PATH"

其中 2 定义了一个文件在被删除之前必须存在的天数。

当我在 CMD 中执行命令时,所有文件都会保留,不会报告任何错误。

但是有趣的是,当我输出到日志文件时,它会报告第一个文件所在的目录。

当我第一次运行该命令时,日志文件报告 E:\Backup2\Alfresco\25072015 但是,当我将日志文件移动到根目录并重新运行该命令时,日志文件报告 E:\Backup2 这表明该命令正在查找它需要删除然后中断的第一个日志文件。

最佳答案

从文档中找到here他们有这些例子:

    Examples:

Delete the testfile if it is is 5 days old or older:
C:\> forfiles /m testfile.txt /c "cmd /c Del testfile.txt " /d -5

Find .xls file that were last modified 30 days ago or older
C:\> FORFILES /M *.xls /C "cmd /c echo @path was changed 30 days ago" /D -30

List the size of all .doc files:
C:\> FORFILES /S /M *.doc /C "cmd /c echo @fsize"

与您的代码相比,您在调用 cmd del 时似乎错过了/c,因此您的代码应该是:

FORFILES /P "E:\Backup2" /S /D -2 /C "CMD /c DEL /F /Q @PATH"

关于windows - 在 Windows 中使用批处理文件删除早于 x 天的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35271940/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com