且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

DOS批处理命令递归删除给定的文件(夹),兼VC工程清理小工具

更新时间:2022-06-28 02:34:40

使用dos批处理命令递归删除指定的文件(夹):

(下面内容针对清理VC工程!自己按说明任意修改)

2014-06-10修改:删除前增加了[y,n]询问;

  1. echo off  
  2.   
  3. rem 递归删除当前文件下指定扩展名的文件  
  4. rem 如果想要添加其他的扩展名文件,按下面del开头格式的行,继续添加对应的扩展名即可  
  5. rem 添加del扩展名需注意:如"*.res",会把"*.resx"的文件也删掉(c#中用到"*.resx"文件)!!  
  6. rem 【rem】开头的内容为注释语句,不起作用  
  7.   
  8.   
  9. set /p VAR=是否删除指定的文件,请选择:[Y, N]?  
  10.   
  11. rem echo %VAR%  
  12.   
  13. if /i '%VAR%' == 'y' goto s1  
  14. if /i '%VAR%' == 'n' goto end  
  15.   
  16. :s1  
  17. for /d %%i in (*.*) do (cd %%i  
  18.     del /s *.ncb  
  19.     del /s *.opt  
  20.     del /s *.plg  
  21.     del /s *.aps  
  22. rem del /s *.res  
  23.     del /s *.idb  
  24.     del /s *.pch  
  25.     del /s *.sbr  
  26.     del /s *.obj  
  27.     del /s *.ilk  
  28.     del /s *.bsc  
  29.     del /s *.fd  
  30.     del /s *.bak  
  31.     del /s *.tlh  
  32.     del /s *.tli  
  33.     del /s *.pdb  
  34.     del /s *.exp  
  35.     del /s *.positions  
  36. rem 下面是准备删除【debug】和【release】文件夹的内容,但谨慎删除!!  
  37. rem rd /s/q debug  
  38. rem rd /s/q release  
  39. cd ..)  
  40.   
  41. :end  
  42. pause  
echo off

rem 递归删除当前文件下指定扩展名的文件
rem 如果想要添加其他的扩展名文件,按下面del开头格式的行,继续添加对应的扩展名即可
rem 添加del扩展名需注意:如"*.res",会把"*.resx"的文件也删掉(c#中用到"*.resx"文件)!!
rem 【rem】开头的内容为注释语句,不起作用


set /p VAR=是否删除指定的文件,请选择:[Y, N]?

rem echo %VAR%

if /i '%VAR%' == 'y' goto s1
if /i '%VAR%' == 'n' goto end

:s1
for /d %%i in (*.*) do (cd %%i
	del /s *.ncb
	del /s *.opt
	del /s *.plg
	del /s *.aps
rem	del /s *.res
	del /s *.idb
	del /s *.pch
	del /s *.sbr
	del /s *.obj
	del /s *.ilk
	del /s *.bsc
	del /s *.fd
	del /s *.bak
	del /s *.tlh
	del /s *.tli
	del /s *.pdb
	del /s *.exp
	del /s *.positions
rem 下面是准备删除【debug】和【release】文件夹的内容,但谨慎删除!!
rem rd /s/q debug
rem rd /s/q release
cd ..)

:end
pause


将上述内容粘贴成一个文本文件,扩展名为bat,放在想要删除的VC工程根下,双击即可。
同时,原先编写的【VC清理工具】(http://download.csdn.net/detail/dijkstar/6982437),可以不用了。