我正在尝试编写一个可以从子目录中删除文件的 Windows 批处理文件。我宁愿不对目录结构进行硬编码,这样我就可以将此过程用于其他项目。
- 我需要删除 X 类型的文件,
- 我有父文件夹
C:\MyProject
, - 有 Y 个子文件夹
C:\MyProject\?
, - 有 N 个文件要删除。
是否有del
我只是缺少的快速(类型)功能?
我正在尝试编写一个可以从子目录中删除文件的 Windows 批处理文件。我宁愿不对目录结构进行硬编码,这样我就可以将此过程用于其他项目。
C:\MyProject
,C:\MyProject\?
,是否有del
我只是缺少的快速(类型)功能?
实际上你可以使用标准的 del 命令:
c:
cd MyProject
del /S *.type
其中 type 是您要删除的扩展名,/S 参数将检入 MyProject 的所有子文件夹。
如果 del 命令没有 /S 标志来递归删除,我会使用 AWK 来做这样的事情(你需要适用于 Windows 的 UNIX 工具):
dir MyProject\*.* /ad /s /b | gawk "{print \"del \\\"\" $0 \"\\*.type\\\"\";}" | cmd
我的 2 美分,以防您需要使用缺少递归标志的命令执行类似操作(将程序应用于所有子文件夹中的所有 X 类型文件)。