我想递归删除批处理文件中具有特定扩展名的所有文件。
我知道以下命令:
del /s *.ext
但是,这在 Windows 上也会删除具有其他扩展名的文件,例如.ext1 或 .ext2 。其原因似乎是此类文件的 8.3 文件名以 .ext 结尾,因此扩展名较长的文件也会匹配。
我正在寻找上述命令的替代方法,该命令递归删除所有具有 .ext 扩展名的文件,但保留具有更长扩展名的文件。
the where命令的工作方式有点不同(关于通配符和短名称)。放一个for /f
循环一圈,就完成了。然后您的示例将转换为:
for /f "delims=" %%a in ('where /r . *.ext') do ECHO del "%%a"
注意:我解除了del
只需回显命令即可。去除ECHO
故障排除后,当您确定它完全符合您的要求时。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)