时间:2021-05-22
OptionExplicit
''''''''''''''说明''''''''''''
'网盟-黑火制作,送给需要的朋友。
'配置文件“Listfile.ini”的格式如下:
'要删除什么(文件|目录)=要执行删除的文件夹=排除1;排除2;排除3............
'配置文件可以有多行,以便对多个目录进行操作。
'配置文件里以“/”开头的行为注释行。
'排除多个内容时,使用分号“;”进行分隔。
'↓↓↓配置文件例子:↓↓↓
'/配置文件开始
'目录=D:\=SystemVolumeInformation;网络游戏;单机游戏;小游戏
'目录=C:\ProgramFiles=qq;WinRAR
'文件=D:\网络游戏=文件1.exe;文件2.exe
'/配置文件结束
'''''''''''''说明完''''''''''''
DimFso,Listfile,objListfile
Listfile=""'设置配置文件路径,如果配置文件和脚本放在一起,请保持原样
IfListfile=""ThenListfile="Listfile.ini"
SetFso=CreateObject("Scripting.FileSystemObject")
OnErrorResumeNext
SetobjListfile=Fso.OpenTextFile(Listfile,1)
IfErrThen
err.Clear
Msgbox"没有找到配置文件"&Listfile,16,"错误"
WScript.quit
EndIf
OnErrorGoTo0
Dimflnum,fdnum,t1,t2,tm
flnum=0
fdnum=0
t1=timer()
DimMyline,LineArr,ListArr
DoWhileobjListfile.AtEndOfStream<>True
Myline=LCase(Replace(objListfile.ReadLine,"==","="))
IfLeft(Myline,1)="/"Then
'objListfile.SkipLine
ElseIfCheckLine(Myline)=2Then
LineArr=Split(Myline,"=")
'DoFolder=LineArr(1)
ListArr=Split(LineArr(2),";")
'MsgBoxLineArr(0)
IfLineArr(0)="目录"ThenDelFolderLineArr(1),ListArr
IfLineArr(0)="文件"ThenDelFileLineArr(1),ListArr
EndIf
Loop
t2=timer()
tm=cstr(int(((t2-t1)*10000)+0.5)/10)
MsgBox"扫描完毕,共删除"&fdnum&"个目录,"&flnum&"个文件。"&vbCrLf&"耗时"&tm&"毫秒",64,"执行完毕"
'不需要显示报告的话,注释掉上面这一行
SetFso=NoThing
WScript.quit
SubDelFolder(Folder,ListArr)
DimobjFolder,subFolders,subFolder
SetobjFolder=Fso.Getfolder(Folder)
SetsubFolders=objFolder.subFolders
ForEachsubFolderInsubFolders
IfNotInArray(LIstArr,LCase(subFolder.name))Then
OnErrorResumeNext
subfolder.Delete(True)
IfErrThen
err.Clear
Msgbox"不能删除目录,请检查"&subFolder,16,"错误"
Else
fdnum=fdnum+1
EndIf
OnErrorGoTo0
EndIf
Next
EndSub
SubDelFile(Folder,ListArr)
DimobjFolder,Files,File
SetobjFolder=Fso.Getfolder(Folder)
SetFiles=objFolder.Files
ForEachFileInFiles
IfNotInArray(LIstArr,LCase(File.name))Then
OnErrorResumeNext
File.Delete(True)
IfErrThen
err.Clear
Msgbox"不能删除文件,请检查"&File,16,"错误"
Else
flnum=flnum+1
EndIf
OnErrorGoTo0
EndIf
Next
EndSub
FunctionCheckLine(strLine)
DimLineRegExp,Matches
SetLineRegExp=NewRegExp
LineRegExp.Pattern=".=."
LineRegExp.Global=True
SetMatches=LineRegExp.Execute(strLine)
CheckLine=Matches.count
EndFunction
FunctionInArray(Myarray,StrIn)
DimStrTemp
InArray=True
ForEachStrTempInMyarray
IfStrIn=StrTempThen
ExitFunction
ExitFor
EndIf
Next
InArray=False
EndFunction
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
为大家介绍vbs属性之size属性,供大家学习参考。Size属性对于文件,返回指定文件的字节数;对于文件夹,返回该文件夹中所有文件和子文件夹的字节数。方便我们判
本文实例讲述了Python实现删除当前目录下除当前脚本以外的文件和文件夹。分享给大家供大家参考。具体如下:importos,sysimportshutilcur
复制代码代码如下:'-------------vbsTree.vbs------------------------'描述:用vbs输出一个文件夹的目录结构。'
rd命令递归删除目录要求:用DOS的RD命令删除D盘“文件夹1”中的“文件夹2”整个目录。具体命令:复制代码代码如下:rdD:\文件夹1\文件夹2/S/Q删除一
ParentFolder属性返回指定文件或文件夹的父文件夹。只读。object.ParentFolderobject应为File或Folder对象的名称。说明以