話說,昨天我將一個2XG的檔案夾壓縮,結果,大小設定錯誤,今天早上來看的時候,有八萬多個1KB的檔案,幾乎要癱瘓我的系統,不只是開啟慢,就連要Del掉也都會造成當機。 所以,我就拿出了神奇的cmd...... |
動作前教育 在Windows模式下如果有病毒的存在,通常都會是執行的狀態,如果可以關掉之後刪除,那當然是最好,但遇到那種死皮賴臉,綁死系統核心,啟動安全模式都沒辦法刪檔的情況怎麼辦?那就要藉助命令字元來刪除檔案啦! 1.要清楚知道檔案位置以及其檔案之副檔名 1.cd /d 磁區代號:資料夾名稱 範例:假設我要移動到C:\Windows,那我指令就要打 cd /d c:\windows 這樣DOS就會把目錄切換到Windows資料夾中了 2.cd.. 如果你的檔案加資料夾有一大堆,你可能要等一陣子看那一長串資料刷完,等到刷完之後,系統會告訴你,你看的這個資料夾內,有多少檔案、子資料夾,已經用了多少空間、還剩多少空間等資訊。 4.del 磁區代號:資料夾名稱檔案名稱 範例:假設我要刪除Windows資料夾中的log.txt這個檔案,那我就要鍵入 del C:\Windows\log.txt 這樣log.txt這個檔案就會被刪除了。 del C:\Windows\log*.txt 你可能會有疑問,為什麼要用 * ,有副檔名是*的嗎等問題,會用*是因為我製作壓縮檔的時候,壓縮檔的檔案名稱除了photo.是相同的,其他都不同,如果我要一個一個檔案刪除的話,我要刪除八萬多次,但我用了萬用字元 * ,我只要刪除一次,就可以直接把全部都刪除。 5.del/f 範例:假設我要刪除Windows資料夾中的system.tmp這個檔案,那我就要鍵入 del/f C:\Windows\system.tmp 這樣system.tmp這個檔案就會被刪除了 6.replace 檔案所在磁區代號:資料夾名稱檔案名稱 檔案目的磁區代號:資料夾名稱 範例:假設我要複製C:\Windows\explorer.exe這個檔案從我的磁片到我的電腦,那就要鍵入 replace A:\explorer.exe C:\Windows 這樣就可以完成複製檔案。 如果要覆蓋唯讀檔案的話,可以在指令後面加上/r參數 7.md 磁區代號:資料夾名稱想要建立的資料夾名稱 範例:假設我要在C:\Windows中建立一個叫做new的資料夾,那我就要鍵入 md C:\Windows\new 資料夾就會建立了。 8.rd/s 磁區代號:資料夾名稱想要刪除的資料夾名稱 範例:假設我要在C:\Windows中刪除一個叫做new的資料夾以及裡面所有檔案,那我就要鍵入 rd/s C:\Windows\new 資料夾就會刪除了。 |
另外,如果要大量刪除隱藏的資料夾,有兩個方法可以讓大家參考一下。 |
方法一: 由於要刪除的是隱藏的資料夾,Del指令就不能用了。因此首先要取得要刪除的檔案有哪些,步驟如下: 1. 執行「cmd」指令到命令列模式,並切換目錄到Windows目錄下。 cd /d c:\windows 2. 然後將dir的結果,轉存到D 磁碟新建的A1.txt 文字檔裡。指令是 DIR /a:h $*.* | FIND "$" > D:\A1.txt 3. 打開 A1.txt的內容所列的就是要刪除的$字號開頭的隱藏資料夾。 如果要刪除這些資料夾,一定要先解除隱藏屬性,才能處理。要解除資料夾隱藏屬性,可以下指令 Attrib $*.* -H /s /d 另外也可以用檔案總管的「資料夾選項」、「檢視」選項,將隱藏檔案與資料夾的設定改成顯示。之後再刪除指定的資料夾即可。 |
方法二: 將下列程式碼存成副檔名為「.vbs」的檔案,再用檔案總管雙擊即可執行。建立執行過程中需要用到的一些變數 '建立 FileSystemObject 物件 Set fso = CreateObject("Scripting.FileSystemObject") '傳回對應到指定路徑中資料夾的 Folder 物件,請自行改為 C:\Windows Set oFld = fso.GetFolder("D:\Test") '傳回Folder物件的子目錄集合,其中包含設定隱藏和系統檔案屬性的資料夾 Set oSubFlds = oFld.SubFolders '逐一取出子目錄集合內的子目錄 For Each oSubFld in oSubFlds '比較子目錄第一個字元為$ If Left(oSubFld.name,1) = "$" Then '變更目錄屬性為一般 oSubFld.attributes = 0 '逐一取出子目錄內的檔案 For each oFile in oSubFld.files '變更檔案屬性為一般 oFile.attributes = 0 Next '刪除子目錄 fso.DeleteFolder(oSubFld) End If Next |
文章來源: |
- Jan 07 Wed 2009 10:27
[實用] 用cmd刪除大量檔案
全站熱搜
留言列表