17

我正在尝试编写一个可以从子目录中删除文件的 Windows 批处理文件。我宁愿不对目录结构进行硬编码,这样我就可以将此过程用于其他项目。

  • 我需要删除 X 类型的文件,
  • 我有父文件夹C:\MyProject
  • 有 Y 个子文件夹C:\MyProject\?
  • 有 N 个文件要删除。

是否有del我只是缺少的快速(类型)功能?

4

2 回答 2

34

实际上你可以使用标准的 del 命令:

c:
cd MyProject
del /S *.type

其中 type 是您要删除的扩展名,/S 参数将检入 MyProject 的所有子文件夹。

于 2008-12-03T15:37:02.423 回答
1

如果 del 命令没有 /S 标志来递归删除,我会使用 AWK 来做这样的事情(你需要适用于 Windows 的 UNIX 工具):

dir MyProject\*.* /ad /s /b | gawk "{print \"del \\\"\" $0 \"\\*.type\\\"\";}" | cmd

我的 2 美分,以防您需要使用缺少递归标志的命令执行类似操作(将程序应用于所有子文件夹中的所有 X 类型文件)。

于 2008-12-04T16:40:02.483 回答