随笔 - 64, 文章 - 11, 评论 - 12, 引用 - 0
数据加载中……

删除文件夹下指定类型的文件

      昨日,我的一个分区报告磁盘容量低。这个分区我是专门用来存储例子及项目,经过分析发现是因为太多的例子程序编译后产生的dll, exe, ncb文件占据了大量的空间,而代码文件占用的空间并不是很多。只有去删除这些生成的文件了。但经过长久的使用,积累了大大小小有数百个小例子,要删除每个例子的这些文件是一件很枯燥繁重的重复工作。删了5个搞得人都有些晕了。后来想想为什么不用程序来做这件事了。于是我就写了段脚本来处理这项工作了。效果还不错。

mydir = "E:\klfd"  ' 指定要删除哪个目录下的文件
specifyExt = "exe,dll,ilk,pdb,obj,exp,lib,pch,res,dep,idb,manifest"  '指定要删除的文件类型,可千万不要用* 哦
extArr = split(specifyExt, ",")
Set fs = CreateObject("scripting.filesystemobject")
Set rootFolder = fs.getfolder(mydir)
DeleteFile rootFolder
MsgBox "Delete complete"

Sub DeleteFile(myfolder)
On Error Resume Next
 Set subfolders = myfolder.Subfolders
 For Each Subfolder in subfolders
  DeleteFile subfolder
 Next

 For Each strExt in extArr
  strTemp = myfolder.path & "\*." & strExt
  fs.deletefile strTemp, True
 Next
 'For each myfile in myfolder.files 
 ' strFileExt = LCase(fs.getextensionname(myfile.name))
 ' For each strExt in extArr
 ' If strExt = strFileExt Then
 '   fs.deletefile myfile.path, True
 '  End If
 ' Next  
 'Next
End Sub

posted on 2009-03-04 12:04 Robertxiao 阅读(906) 评论(0)  编辑 收藏 引用 所属分类: 天马行空


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理