用VC6.0寫了好多代碼,編譯事後生成了不少不想要的文件。因而我寫了下面這個腳本,只把裏面的代碼文件留下。bash
腳本編寫的思想以下:ui
先進行輸入合法性檢查spa
腳本使用例程CleanFolder遍歷一個文件夾命令行
1)使用CleanFolder遞歸遍歷該文件夾下的全部子文件夾code
2)若是該子文件夾的大小爲0,則刪除這個文件夾遞歸
3)遍歷該文件夾下的全部文件,擴展名不是 *.h *.c *.cpp,則刪除該文件ip
'腳本用途:遍歷一個文件夾,執行下列操做 '1)若是一個文件不屬於 *.c *.cpp *.h 類型則刪除 '2)若是一個子文件夾中沒有文件,則刪除該文件夾 '輸入參數:Argument(0) 被檢查文件夾地址 Option Explicit '檢查輸入參數是否合法 Dim FolderAddress If WScript.Arguments.Count <> 1 Then WScript.Echo "參數輸入錯誤!請輸入要遍歷的文件夾地址。" WScript.Quit Else FolderAddress = WScript.Arguments(0) WScript.Echo "準備遍歷文件夾:" & FolderAddress End If Dim FSO Set FSO = CreateObject("Scripting.FileSystemObject") '考察文件夾是否存在 If Not FSO.FolderExists(FolderAddress) Then WScript.Echo "文件夾非法!請檢查是否有拼寫錯誤。" WScript.Quit End If CleanFolder FolderAddress '例程:遞歸刪除一個文件夾內不符合規格的文件和文件夾 Sub CleanFolder(Folder) WScript.Echo "開始遍歷文件夾:" & FolderAddress Dim SubFolder, File '檢查全部子文件夾 For Each SubFolder In FSO.GetFolder(Folder).SubFolders WScript.Echo "發現文件夾:" & SubFolder CleanFolder SubFolder '若是文件夾爲空,則刪除該文件夾 If FSO.GetFolder(SubFolder).Size = 0 Then WScript.Echo "刪除空文件夾:" & SubFolder FSO.DeleteFolder(SubFolder) End If Next '刪除全部文件 For Each File In FSO.GetFolder(Folder).Files WScript.Echo "發現文件:" & File '在這裏指定要保留的文件擴展名,不屬於該擴展名的文件將被刪除 If UCase(FSO.GetExtensionName(File.Name)) <> "H" _ And UCase(FSO.GetExtensionName(File.Name)) <> "C" _ And UCase(FSO.GetExtensionName(File.Name)) <> "CPP" Then WScript.Echo "刪除文件:" & File FSO.DeleteFile(File) End If Next End Sub
調用本腳本,能夠在命令行中輸入下面的命令運行ci
cscript 腳本地址 待檢查文件夾地址 //nologo
ENDit