濮阳杆衣贸易有限公司

主頁 > 知識庫 > 用VBS腳本刪除指定以外的文件或文件夾

用VBS腳本刪除指定以外的文件或文件夾

熱門標簽:龍巖400電話申請 上海辦理400電話選號 智云億呼電話機器人 外呼系統(tǒng)說話聲音小怎么辦 機器人打電銷適用于美業(yè)嗎 企業(yè)400電話辦理價錢低 墨西哥地圖標注app 天津智能外呼系統(tǒng)排名 外呼系統(tǒng)群
Option Explicit

''''''''''''''說明''''''''''''
'網(wǎng)盟-黑火制作,送給需要的朋友。
'配置文件“Listfile.ini”的格式如下:
'要刪除什么(文件|目錄)=要執(zhí)行刪除的文件夾=排除1;排除2;排除3............
'配置文件可以有多行,以便對多個目錄進行操作。
'配置文件里以“/”開頭的行為注釋行。
'排除多個內(nèi)容時,使用分號“;”進行分隔。
'↓↓↓ 配置文件例子:↓↓↓
'/配置文件開始
'目錄=D:\=System Volume Information;網(wǎng)絡游戲;單機游戲;小游戲
'目錄=C:\Program Files=qq;WinRAR
'文件=D:\網(wǎng)絡游戲=文件1.exe;文件2.exe
'/配置文件結束
'''''''''''''說明完''''''''''''

Dim Fso,Listfile,objListfile
Listfile = ""           '設置配置文件路徑,如果配置文件和腳本放在一起,請保持原樣

If Listfile = "" Then Listfile = "Listfile.ini"
Set Fso = CreateObject("Scripting.FileSystemObject")
On Error Resume Next
Set objListfile = Fso.OpenTextFile(Listfile,1)
If Err Then
     err.Clear
     Msgbox "沒有找到配置文件 "Listfile,16,"錯誤"
     WScript.quit
End If
On Error GoTo 0

Dim flnum,fdnum,t1,t2,tm
flnum=0
fdnum=0
t1 = timer()

Dim Myline,LineArr,ListArr
Do While objListfile.AtEndOfStream > True
     Myline = LCase(Replace(objListfile.ReadLine,"==","="))
     If Left(Myline,1) = "/" Then
     'objListfile.SkipLine
     ElseIf CheckLine(Myline) = 2 Then
         LineArr = Split(Myline,"=")
         'DoFolder = LineArr(1)
         ListArr = Split(LineArr(2),";")
   'MsgBox LineArr(0)
         If LineArr(0) = "目錄" Then DelFolder LineArr(1),ListArr
         If LineArr(0) = "文件" Then DelFile LineArr(1),ListArr
     End If
Loop

t2 = timer()
tm=cstr(int(( (t2-t1)*10000 )+0.5)/10)

MsgBox "掃描完畢,共刪除 "fdnum" 個目錄, "flnum "個文件。" vbCrLf "耗時 "tm" 毫秒",64,"執(zhí)行完畢"
'不需要顯示報告的話,注釋掉上面這一行

Set Fso=NoThing
WScript.quit

Sub DelFolder(Folder,ListArr)
Dim objFolder,subFolders,subFolder
     Set objFolder=Fso.Getfolder(Folder)
     Set subFolders=objFolder.subFolders
     For Each subFolder In subFolders
     If Not InArray(LIstArr,LCase(subFolder.name)) Then
     On Error Resume Next
         subfolder.Delete(True)
         If Err Then
             err.Clear
             Msgbox "不能刪除目錄,請檢查 "subFolder,16,"錯誤"
         Else
         fdnum = fdnum + 1
         End If
         On Error GoTo 0
     End If
     Next
End Sub

Sub DelFile(Folder,ListArr)
Dim objFolder,Files,File
     Set objFolder=Fso.Getfolder(Folder)
     Set Files=objFolder.Files
     For Each File In Files
     If Not InArray(LIstArr,LCase(File.name)) Then
     On Error Resume Next
         File.Delete(True)
         If Err Then
             err.Clear
             Msgbox "不能刪除文件,請檢查 "File,16,"錯誤"
         Else 
         flnum = flnum + 1
         End If
         On Error GoTo 0
     End If
     Next
End Sub

Function CheckLine(strLine)
Dim LineRegExp,Matches
Set LineRegExp = New RegExp
LineRegExp.Pattern = ".=."
LineRegExp.Global = True
Set Matches = LineRegExp.Execute(strLine)
CheckLine = Matches.count
End Function

Function InArray(Myarray,StrIn)
Dim StrTemp
InArray = True
For Each StrTemp In Myarray
     If StrIn = StrTemp Then
         Exit Function
         Exit For
     End If
Next
InArray = False
End Function

標簽:承德 鄂爾多斯 阜新 齊齊哈爾 麗水 青島 黃山 錫林郭勒盟

巨人網(wǎng)絡通訊聲明:本文標題《用VBS腳本刪除指定以外的文件或文件夾》,本文關鍵詞  用,VBS,腳本,刪除,指定,以外,;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《用VBS腳本刪除指定以外的文件或文件夾》相關的同類信息!
  • 本頁收集關于用VBS腳本刪除指定以外的文件或文件夾的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    荥经县| 长寿区| 临清市| 广元市| 昌平区| 林甸县| 长葛市| 淮滨县| 潜江市| 嘉兴市| 邮箱| 岳池县| 昔阳县| 岗巴县| 宾阳县| 上栗县| 北海市| 墨玉县| 秦安县| 库伦旗| 南开区| 兴山县| 峨眉山市| 卢龙县| 神池县| 荣成市| 武隆县| 临高县| 佛山市| 郧西县| 灵宝市| 岢岚县| 交口县| 陕西省| 遂川县| 乌海市| 石嘴山市| 浦北县| 灌阳县| 敖汉旗| 陆川县|