【问题标题】:Delete files older than x days in multiple folders删除多个文件夹中超过 x 天的文件
【发布时间】:2021-04-01 17:53:12
【问题描述】:

我的文件夹结构是这样的:

C:\XYZ\
|---A\
|-----Archive
|---B\
|-----Archive
|---C\
|-----Archive

总共有大约 150 个文件夹。我运行下面的命令来查看文件夹中有哪些文件:

for /R C:\XYZ\ %i IN ("archive\*.*") do echo %i

我想修改此命令以删除存档文件夹中早于几天的所有文件。我在命令行某处尝试了/d -20 以尝试获取刚刚列出的文件,但似乎没有任何效果。

【问题讨论】:

    标签: windows


    【解决方案1】:

    根据您的要求,以下命令将为您提供帮助:

    ForFiles /p "c:\XYZ" /s /d -20 /M Archive.* /c "cmd /c del @file"

    如需进一步帮助,请参考https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/forfiles

    注意:在尝试任何命令之前请备份您的内容:D

    【讨论】:

    • @Hansie Lategan,如果这解决了你的问题,请接受答案,或者让我知道是否需要修改
    • @shivram seth 我认为它不会起作用。结构其实是c:\xyz\a\archive*.* c:\xyz\b\archive*.* \a \b etc文件夹下还有子文件夹。抱歉,我正在与编辑作斗争无法突出显示代码。尝试阅读如何做到这一点,但无法正确
    • @Hansie,我认为 /s 标志将遍历所有子目录,然后删除 Archieve.* 那里,。如果您还没有尝试过,至少可以检查一次
    • @shivram 我测试过,它不起作用,因为它正在寻找名称为“存档”的文件而不是在存档文件夹中搜索。
    猜你喜欢
    • 1970-01-01
    • 2021-07-09
    • 1970-01-01
    • 2018-06-25
    • 1970-01-01
    • 2015-10-02
    • 1970-01-01
    • 1970-01-01
    • 2021-03-12
    相关资源
    最近更新 更多