是否可以使用Windows批处理文件删除某些rar文件?

时间:2015-02-05 14:16:48

标签: windows batch-file cmd rar

我正在尝试使用批处理文件从特定文件夹中删除超过30天的.rar文件。但是我现在批处理文件删除了超过30天的任何文件,我想将其限制为.rar文件。我的代码如下。

REM *******************************************************************
REM Deleting database backups older than 30 days. 

@echo off
@Echo Deleting database backups older than 30 days...
rem echo y|forfiles /p C:\Batch\Archives\*.rar /d -30 /c "cmd /c del @path"

pause  

EXIT

1 个答案:

答案 0 :(得分:1)

如果查看forfiles帮助,您会看到/P参数仅用于路径。您需要使用/M参数作为文件掩码。所以你应该使用它:

forfiles /p C:\Batch\Archives /m *.rar /d -30 /c "cmd /c del @path"

在我的情况下,没有必要回应'y'来确认。但是,如果您的del要求确认,请使用其/Q参数。

不在一边,使用@后无需再次使用@echo off。您可以在第一行使用@echo off,也可以在每行之前放置一个@,这两种情况都不需要,并使您的文件更加丑陋。 此外,我会将@echo off放在REM之前,以便不显示它们。如果您想要显示这些消息,请使用echo