如何使用通配符删除多个文件

时间:2016-11-06 14:42:35

标签: windows batch-file directory delete-file

我需要删除文件夹中的所有 .gr2 .dds 文件。我试图在这段代码中做到这一点:

del "ToDelete/*/*.gr2"
del "ToDelete/*/*.dds"

pause

但是这段代码不会删除任何文件。我想我错误地使用了通配符。

1 个答案:

答案 0 :(得分:1)

通配符只能用在路径的最后一个元素中。您可以使用for /D循环遍历要删除的文件的父目录:

for /D %%D in ("ToDelete\*") do (    
    del "%%~D\*.gr2" "%%~D\*.dds"
)

/Q开关添加到删除状态而不提示。

注意:在Windows中,使用\作为路径分隔符,/可能会导致问题。

如果您要删除任何目录深度中的文件,请使用/S的切换del

del /S "ToDelete\*.gr2" "ToDelete\*.dds"

/Q开关添加到删除状态而不提示。