用于删除匹配文件名的批处理文件

时间:2017-10-05 19:33:22

标签: windows batch-file delete-file

我是编写Windows批处理代码的新手。我试图从3天以前的文件夹中删除文件,但在删除之前进行检查以确保删除所有匹配的文件。例如......

123456.html
123456.txt
123456.xxx
987654.html
987654.txt

鉴于文件列表,我希望批处理找到.xxx文件并删除它以及任何匹配的文件,当这三个文件都超过3天时。

我在互联网上找到了以下内容:

@ECHO Off
SETLOCAL ENABLEDELAYEDEXPANSION
SET "sourcedir=C:\Users\ad9f2p\TEST CLEANUP"
FOR /f "delims=" %%a IN (
 'dir /b /a-d "%sourcedir%\*" '
) DO (
 SET "filename=%%a"
 SET "filename=!filename:*.XXX=!"
 IF "!filename!"=="!filename:_=!" ECHO DEL "%sourcedir%\%%a"
)
Pause
GOTO :EOF

我将文件名后缀更改为.xxx,希望删除所有匹配项,但它回显了要删除的目录中的所有内容。它应该只留下987654文件。

0 个答案:

没有答案