制刪除的完整排查指南)
偶爾會(huì)遇到這樣一個(gè)場景你從某個(gè)聊天工具里下載了一份文件收到之后看完順手點(diǎn)刪除結(jié)果系統(tǒng)彈出一行字——“操作無法完成因?yàn)槲募言诹硪粋€(gè)程序中打開”。再仔細(xì)一看電腦上明明沒有任何相關(guān)的窗口開著。于是你試著重試重啟資源管理器甚至重啟電腦再刪一次還是不行。電腦強(qiáng)制刪除某一個(gè)被占用的文件看似是個(gè)小問題但只要你經(jīng)常和電腦打交道早晚會(huì)碰上一次。更麻煩的是網(wǎng)上搜到的辦法五花八門有讓結(jié)束進(jìn)程的、有讓進(jìn)安全模式的、還有讓直接用命令行硬刪的到底哪個(gè)靠譜、會(huì)不會(huì)把系統(tǒng)搞壞沒人給你說得太清楚。這篇文章我就把這些方法拆開揉碎從原理到實(shí)操把占用的原因、定位手段、刪除技巧和常見坑一次講透讓你下次遇到類似情況能自己判斷而不是瞎試。1. 為什么文件會(huì)“打不開、刪不掉”文件鎖和句柄是怎么回事1.1 用一句話講清楚句柄要解決刪除被占用文件的問題首先得知道文件為什么會(huì)被占用。系統(tǒng)里每個(gè)正在運(yùn)行的程序只要它打開了一個(gè)文件系統(tǒng)就會(huì)給這個(gè)程序發(fā)一個(gè)“憑證”這個(gè)憑證在開發(fā)領(lǐng)域叫句柄。你可以把它理解成圖書館里的借書登記條程序拿著借書條就等于跟系統(tǒng)說“這本書我正在看別人不能動(dòng)”。只要借書條沒還回去系統(tǒng)就不允許其他人隨意更改、移動(dòng)或者刪除這本書。但這里有個(gè)細(xì)節(jié)很關(guān)鍵程序打開文件的時(shí)候可以指定自己允許別人怎么操作這個(gè)文件。系統(tǒng)提供了一組開關(guān)分別管“讓別人讀”“讓別人寫”“讓別人刪”。如果一個(gè)程序在打開文件時(shí)把“允許刪除”這個(gè)開關(guān)關(guān)掉了那就算你擁有管理員權(quán)限系統(tǒng)也會(huì)拒絕你刪除。很多老舊的程序?qū)懘a時(shí)根本沒考慮別人要不要?jiǎng)h這個(gè)文件所以默認(rèn)就把所有開關(guān)都關(guān)掉了這就是很多文件明明沒人在用卻依舊刪不掉的深層原因。我還遇到過一種情況文件沒有被實(shí)際打開但被某個(gè)后臺(tái)服務(wù)的索引程序讀著。這類程序打開文件不是為了顯示內(nèi)容而是為了掃描、緩存、做縮略圖。它們把文件打開之后可能一直沒釋放句柄前臺(tái)的界面看是干干凈凈的后臺(tái)卻攥著不放這就會(huì)造成“關(guān)了所有窗口還是刪不掉”的詭異現(xiàn)象。1.2 日常最容易鎖住文件的幾個(gè)“黑手”根據(jù)我過去幾年的排查經(jīng)驗(yàn)占用文件的進(jìn)程其實(shí)就那么幾類。我先列一張表方便你對(duì)號(hào)入座占用來源典型進(jìn)程或程序常見涉案文件聊天工具聊天軟件的文件傳輸進(jìn)程剛接收的壓縮包、圖片、文檔瀏覽器下載組件瀏覽器下載器、云同步進(jìn)程正在下載或剛下載完的安裝包殺毒或安全管家實(shí)時(shí)防護(hù)進(jìn)程、病毒掃描進(jìn)程exe、dll、壓縮包文檔編輯軟件編輯器緩存進(jìn)程、語法索引進(jìn)程正在編輯的文檔、代碼文件影音播放器播放器后臺(tái)進(jìn)程視頻、音頻文件系統(tǒng)預(yù)覽機(jī)制資源管理器縮略圖緩存圖片、視頻、PDF開發(fā)工具前端調(diào)試服務(wù)、本地服務(wù)器項(xiàng)目目錄、日志文件、依賴文件夾虛擬光驅(qū)鏡像掛載工具ISO鏡像壓縮包你可能注意到了表格里有一類常見的登錄資源管理器本身的預(yù)覽功能。很多人刪不掉圖片或視頻就是因?yàn)樵谖募Y源管理器里選中過這個(gè)文件縮略圖預(yù)覽還沒刷新完資源管理器進(jìn)程就攥著這個(gè)文件的句柄不松手。解決辦法通常是重啟資源管理器進(jìn)程而不是重啟整臺(tái)電腦。| 日常也容易卡出問題的就是文檔編輯軟件的后臺(tái)索引?,F(xiàn)在大部分編輯器和文檔軟件啟動(dòng)后會(huì)掃描目錄、生成檢索信息一個(gè)小文件被它讀著你在外面怎么點(diǎn)刪除都沒反應(yīng)。這類占用通常不是持續(xù)性的等幾秒再刪可能就成功了但你要是馬上瘋狂重試反而會(huì)一直撞在槍口上。有一個(gè)比較少見但特別迷惑的場景是虛擬光驅(qū)。如果你之前用系統(tǒng)自帶的掛載功能打開過ISO鏡像掛載出來的虛擬光驅(qū)其實(shí)占用了整個(gè)鏡像文件。很多人刪ISO文件刪不掉排查了半天找不到進(jìn)程最后才發(fā)現(xiàn)是那個(gè)虛擬光驅(qū)沒卸載。這種問題用任務(wù)管理器找進(jìn)程根本找不到直接右鍵卸載光驅(qū)就好了。2. 動(dòng)手之前先做一件事找到到底誰占用了這個(gè)文件2.1 用資源監(jiān)視器搜句柄不需要裝任何工具遇到刪不掉的文件我第一反應(yīng)都不是直接強(qiáng)刪而是先搞清楚誰在占用。系統(tǒng)自帶了一個(gè)非常隱蔽但好用的工具資源監(jiān)視器。用起來很簡單按CtrlShiftEsc打開任務(wù)管理器切到“性能”頁然后點(diǎn)最底部的“打開資源監(jiān)視器”。打開之后切到CPU選項(xiàng)卡下方會(huì)有一個(gè)“關(guān)聯(lián)的句柄”搜索框。把刪不掉的文件名或者完整路徑輸進(jìn)去系統(tǒng)就會(huì)把所有持有這個(gè)文件句柄的進(jìn)程列出來。這個(gè)搜索功能是我用得最多的幾乎是排查占用的第一利器。搜索結(jié)果顯示出來之后挨個(gè)看進(jìn)程列表里哪幾個(gè)和這個(gè)文件有關(guān)系。如果看到某個(gè)程序正在正常使用你就要想一下它是不是重要的東西。如果是個(gè)無關(guān)進(jìn)程你直接右鍵選擇“結(jié)束進(jìn)程”結(jié)束之后再去刪除文件成功率非常高。有一點(diǎn)要提醒你資源監(jiān)視器的搜索結(jié)果不只是顯示文件名還會(huì)顯示匹配到的路徑。有時(shí)候一個(gè)文件夾打不開是因?yàn)槔锩娴哪硞€(gè)子文件被占用了這時(shí)候搜子文件的名字比直接搜整個(gè)文件夾路徑更有用。如果你搜文件夾路徑搜不到結(jié)果但確實(shí)又刪不掉可以考慮把文件夾里包含的文件一個(gè)個(gè)拆開搜能更精確地定位問題。2.2 用命令行定位占用適合腳本化和批量場景如果你習(xí)慣使用命令行或者要一次性處理一大堆問題文件還有一套更快的辦法。系統(tǒng)自帶的任務(wù)列表命令可以幫你判斷某個(gè)進(jìn)程加載了哪些模塊文件。原理是一個(gè)exe或dll文件正在被某些進(jìn)程使用的時(shí)候通常會(huì)被加載到對(duì)應(yīng)進(jìn)程的內(nèi)存空間里。在管理員命令行里輸入這樣一段命令可以查看哪些進(jìn)程引用了某個(gè)路徑下的文件tasklist /m /fi imagename eq 文件名.dll但這種方法有個(gè)前提被占用的文件必須是可執(zhí)行文件或動(dòng)態(tài)庫。如果是一個(gè)普通的數(shù)據(jù)文件比如圖片、視頻、文檔tasklist是查不到的。更通用的命令行方案是使用系統(tǒng)工具包里的句柄查看命令。這個(gè)工具能遍歷所有進(jìn)程打開的句柄然后按文件名匹配效果和資源監(jiān)視器一樣但更適合腳本環(huán)境。用法和效果大概是handle.exe 完整路徑\文件名 相關(guān)參數(shù)這個(gè)工具的名字在系統(tǒng)工具圈子里很常用但它體積小、運(yùn)行時(shí)不裝任何服務(wù)算是比較干凈的排查方式。命令行里輸出的結(jié)果直接就是進(jìn)程ID和進(jìn)程名比資源監(jiān)視器看著更直觀。不過我要提醒你這套命令行方案更適合有腳本需求的開發(fā)者或技術(shù)經(jīng)驗(yàn)比較多的用戶。如果你只是一個(gè)普通用戶還是優(yōu)先用資源監(jiān)視器安全性最高。3. 常規(guī)方案從“最文明”到“強(qiáng)制”一步步來3.1 先關(guān)進(jìn)程、重啟資源管理器定位到了占用進(jìn)程之后常規(guī)玩法就是把它結(jié)束掉。這個(gè)步驟看似簡單但有幾個(gè)細(xì)節(jié)值得講究。如果你的目標(biāo)文件正在某個(gè)軟件里打開著我的建議是先把數(shù)據(jù)保存好再從那個(gè)軟件里正常關(guān)閉文件。盡量避免直接任務(wù)管理器結(jié)束進(jìn)程因?yàn)楹芏嘬浖奈幢4鏀?shù)據(jù)都在內(nèi)存里強(qiáng)行結(jié)束進(jìn)程會(huì)導(dǎo)致數(shù)據(jù)丟失。如果你不確定進(jìn)程結(jié)束之后對(duì)當(dāng)前工作的影響最好先在軟件界面里正常退出。如果占用進(jìn)程是資源管理器本身比如前面說的縮略圖預(yù)覽卡死那就不需要結(jié)束整個(gè)進(jìn)程讓它自己重啟就行。操作方式是在任務(wù)管理器里找到“Windows資源管理器”右鍵“重新啟動(dòng)”。桌面會(huì)閃一下任務(wù)欄消失然后再出現(xiàn)這個(gè)過程大概兩秒左右。重啟之后很多因AI資源管理器緩存引起的占用問題就自動(dòng)解除了。還有一個(gè)容易被忽略的地方殺毒和安全管家的實(shí)時(shí)防護(hù)。這類軟件會(huì)掃描所有新出現(xiàn)的文件掃描期間文件是處于鎖定狀態(tài)的。很多不是很大的安裝包刪不掉就是這個(gè)原因。這種進(jìn)程在設(shè)計(jì)上有自我保護(hù)機(jī)制任務(wù)管理器里直接結(jié)束可能沒反應(yīng)。更合適的方法是進(jìn)入安全管家的界面暫時(shí)關(guān)閉實(shí)時(shí)防護(hù)或退出保護(hù)進(jìn)程然后再刪除文件。3.2 改文件名、移動(dòng)到其他目錄再刪如果不想結(jié)束進(jìn)程還有一個(gè)偏門技巧試著把文件重命名或者移動(dòng)到別的文件夾。這個(gè)技巧能成功是因?yàn)橄到y(tǒng)對(duì)“刪除”和“重命名”的權(quán)限要求不完全一樣。某些程序打開文件時(shí)只鎖定了文件內(nèi)容不允許別人讀寫但沒有禁止別人改名字或移動(dòng)位置。這種情況下你可以先把文件名改成任意名稱比如加一個(gè)后綴再把文件移動(dòng)到桌面或者某個(gè)新建的空白文件夾里。移動(dòng)成功之后那個(gè)占據(jù)句柄的進(jìn)程通常不會(huì)繼續(xù)跟蹤新位置你再刪除就能成功了。這里有一個(gè)前提只有當(dāng)程序打開文件時(shí)沒有禁止重命名和移動(dòng)操作這個(gè)技巧才有效。很多程序其實(shí)是禁止的所以你試一下改不了名字就不用勉強(qiáng)直接換下一種辦法。3.3 用命令行強(qiáng)制刪除del、Remove-Item、rd如果你已經(jīng)確認(rèn)這個(gè)文件沒什么用也確認(rèn)占用它的進(jìn)程可以殺掉但各種圖形界面操作都不順利那就輪到命令行上場了。刪除單個(gè)文件的命令很簡單管理員命令行里執(zhí)行del /f /q /a 完整文件路徑參數(shù)里的/f表示強(qiáng)制刪除只讀文件/q表示不用逐個(gè)確認(rèn)/a表示按屬性匹配文件。這串命令執(zhí)行之后不會(huì)像資源管理器一樣彈出一堆“文件正在使用”的窗口能刪就直接刪了。如果你要?jiǎng)h除一個(gè)文件夾包括里面的所有子文件夾和文件可以用rd /s /q 文件夾完整路徑這里/s代表遞歸刪除子目錄/q代表安靜模式。但要注意rd在路徑末端遇到被占用的文件時(shí)照樣會(huì)失敗。它和圖形界面刪除相比只是省去了確認(rèn)環(huán)節(jié)并不是“萬能刪”。在Windows系統(tǒng)自帶的腳本環(huán)境里對(duì)應(yīng)的命令是Remove-Item -LiteralPath 完整路徑 -Force -Recurse -ErrorAction Continue這個(gè)命令同樣會(huì)受到文件鎖的限制。歸根結(jié)底命令行強(qiáng)制刪除只是讓你繞過一部分權(quán)限彈窗和錯(cuò)誤提示并沒有能力去處理真正常握句柄的程序。所以命令行刪除失敗的時(shí)候不要硬跟系統(tǒng)杠還是回到找占用進(jìn)程這條路。3.4 讓系統(tǒng)在開機(jī)前完成刪除計(jì)劃任務(wù)和啟動(dòng)腳本有一種很氣人的場景占用文件的是一個(gè)開機(jī)自啟的服務(wù)你把它結(jié)束掉它馬上自動(dòng)重啟然后繼續(xù)鎖著文件。這種進(jìn)程直接刪是刪不掉的但我發(fā)現(xiàn)可以通過“延遲到重啟后刪除”的方式繞過去。思路很簡單系統(tǒng)啟動(dòng)的早期階段很多服務(wù)和軟件還沒有完全啟動(dòng)這時(shí)候去刪除文件幾乎沒有進(jìn)程占用。所以你可以把刪除命令做成一個(gè)腳本放進(jìn)開機(jī)啟動(dòng)項(xiàng)或者創(chuàng)建一個(gè)計(jì)劃任務(wù)讓它登錄時(shí)自動(dòng)運(yùn)行。具體做法是修改一個(gè)文本文件里面寫timeout /t 5 /nobreak del /f /q 完整文件路徑保存為bat文件然后丟到系統(tǒng)啟動(dòng)文件夾里。重啟電腦后腳本會(huì)在登錄后等待5秒然后再執(zhí)行刪除。如果目標(biāo)文件被某個(gè)晚啟動(dòng)的服務(wù)占用了這個(gè)時(shí)間可能不夠你需要根據(jù)實(shí)際情況把5秒調(diào)長一些比如改成15秒到30秒。更可靠一點(diǎn)的方式是用任務(wù)計(jì)劃程序。打開任務(wù)計(jì)劃程序創(chuàng)建新任務(wù)勾選“使用最高權(quán)限運(yùn)行”觸發(fā)條件選擇“登錄時(shí)”操作選擇“啟動(dòng)程序”指向剛才的bat文件。這樣能確保腳本以管理員權(quán)限運(yùn)行刪除時(shí)遇到的權(quán)限阻力最小。這個(gè)方案里有個(gè)坑要注意啟動(dòng)文件夾路徑可能因?yàn)橄到y(tǒng)版本不同而有差別。你最好不要手輸路徑可以直接在文件資源管理器地址欄輸入啟動(dòng)文件夾命令按回車就自動(dòng)打開對(duì)應(yīng)的文件夾了。把bat文件放進(jìn)去重啟電腦就生效。4. 殺不掉的硬核方案安全模式和應(yīng)急環(huán)境4.1 重啟進(jìn)入安全模式刪除如果普通模式下文件被鎖得死死的怎么都刪不掉那就要考慮到安全模式下去處理。安全模式會(huì)以最小化狀態(tài)啟動(dòng)系統(tǒng)很多第三方服務(wù)、驅(qū)動(dòng)程序和應(yīng)用都不會(huì)加載這意味著大多數(shù)普通程序創(chuàng)建的句柄根本不會(huì)存在刪除文件自然成功率極高。進(jìn)入安全模式的方法在不同系統(tǒng)版本里不太一樣。大部分Windows系統(tǒng)可以先按住Shift鍵然后點(diǎn)開始菜單里的“重啟”進(jìn)入藍(lán)色恢復(fù)界面接著依次進(jìn)“疑難解答”“高級(jí)選項(xiàng)”“啟動(dòng)設(shè)置”最后點(diǎn)“重啟”重啟后按對(duì)應(yīng)的數(shù)字鍵進(jìn)安全模式。進(jìn)入安全模式之后桌面可能還是正常資源管理器的樣子只是分辨率變低。這時(shí)候你找到那個(gè)文件嘗試刪除基本上遇到的阻力會(huì)少很多。如果安全模式里也刪不掉那基本可以確定系統(tǒng)核心服務(wù)還在占用它這種文件往往本身就不是普通文件而是系統(tǒng)工作所需的文件最好謹(jǐn)慎處理。4.2 用PE環(huán)境直接在文件系統(tǒng)層面刪除還有一種場景連安全模式都沒用那就是占用的進(jìn)程是系統(tǒng)核心服務(wù)。這類文件通常是對(duì)系統(tǒng)運(yùn)行很重要的東西平時(shí)被幾張系統(tǒng)進(jìn)程鎖著是正常的。真到了非刪不可的地步只能在系統(tǒng)不運(yùn)行的狀態(tài)下操作。最通用的做法是準(zhǔn)備一個(gè)Windows系統(tǒng)安裝U盤或者一個(gè)應(yīng)急引導(dǎo)環(huán)境這類環(huán)境統(tǒng)稱為PE環(huán)境。從U盤引導(dǎo)進(jìn)入系統(tǒng)安裝界面后按ShiftF10打開命令行這時(shí)候系統(tǒng)主體還沒有被引導(dǎo)起來沒有任何系統(tǒng)服務(wù)占用文件你直接用命令行刪除那個(gè)文件就行。這個(gè)方法適合處理卡在系統(tǒng)深處的文件比如某些系統(tǒng)的臨時(shí)目錄、舊版本軟件卸載殘留或者被安全機(jī)制自我占用的惡意軟件文件。在PE環(huán)境下文件鎖機(jī)制基本不存在只要磁盤格式能被識(shí)別就能完成刪除。不過我要強(qiáng)調(diào)這個(gè)方案操作門檻比較高也容易誤刪系統(tǒng)文件。如果你不太熟悉PE環(huán)境千萬不要把系統(tǒng)盤C盤里的重要文件在這個(gè)環(huán)境里當(dāng)成垃圾文件隨手刪掉。我實(shí)際操作中的經(jīng)驗(yàn)是在PE環(huán)境里刪除操作一定要反復(fù)確認(rèn)完整路徑寧可多輸一遍也不要憑感覺。4.3 第三方解鎖工具能用但別亂用除了系統(tǒng)自帶的方法市面上確實(shí)有不少專門解決“文件占用”的第三方解鎖工具。關(guān)于這類工具我的意見是可以用但要帶著腦子用。這類工具的基本原理是枚舉系統(tǒng)中所有進(jìn)程打開的句柄找到目標(biāo)文件對(duì)應(yīng)的句柄然后強(qiáng)制關(guān)閉這個(gè)句柄。聽起來很爽但它做的其實(shí)就是“奪鎖”操作而不是讓占用程序優(yōu)雅地釋放。如果一個(gè)程序正在寫一個(gè)數(shù)據(jù)庫文件你把它的句柄關(guān)了程序多半會(huì)立刻崩潰數(shù)據(jù)庫文件也可能損壞。所以我建議你給第三方解鎖工具設(shè)定一個(gè)使用邊界只用來解鎖普通文檔、圖片、視頻這類非實(shí)時(shí)寫入的文件解鎖后立即刪除不要用來解鎖數(shù)據(jù)庫文件、正在運(yùn)行的服務(wù)器日志、系統(tǒng)核心組件。還有下載這類工具時(shí)盡量選擇官方渠道或活躍的開源項(xiàng)目不要從亂七八糟的資源站下載這種小工具被捆綁推廣程序的風(fēng)險(xiǎn)很大。另一個(gè)常見的坑是解鎖工具有時(shí)顯示的進(jìn)程是系統(tǒng)進(jìn)程強(qiáng)行關(guān)閉這類進(jìn)程會(huì)造成重啟或藍(lán)屏。遇到系統(tǒng)類進(jìn)程鎖定文件的情況關(guān)閉進(jìn)程不是一個(gè)好選擇直接用重啟刪除方案更穩(wěn)妥。5. 常見問題排查與避坑實(shí)錄5.1 四種錯(cuò)誤提示用藥完全不同系統(tǒng)刪除文件時(shí)彈出的錯(cuò)誤提示其實(shí)信息量很大。我順手整理了一張速查表你可以根據(jù)彈窗內(nèi)容快速判斷處理路徑錯(cuò)誤提示特征真正原因優(yōu)先處理辦法“文件已在另一個(gè)程序中打開”文件句柄被某進(jìn)程持有資源監(jiān)視器搜索句柄結(jié)束對(duì)應(yīng)進(jìn)程“你需要提供管理員權(quán)限才能刪除”當(dāng)前用戶權(quán)限不足右鍵文件屬性檢查安全選項(xiàng)卡或換管理員賬號(hào)“文件夾不是空的”或“目錄不是空的”文件夾里有隱藏文件或子項(xiàng)被占用顯示隱藏項(xiàng)目逐層排查子文件“找不到項(xiàng)目”“位置不可用”路徑失效、快捷方式任務(wù)過期檢查文件路徑是否真實(shí)存在補(bǔ)充完整路徑這里面最容易混淆的是“權(quán)限不足”和“文件被占用”兩種提示。很多人都以為點(diǎn)刪除彈窗就是被占用實(shí)際上鎖定的原因可能是文件屬于另一個(gè)賬號(hào)或者被設(shè)置成了只讀。右鍵文件打開屬性把“只讀”勾選框去掉再刪除你會(huì)發(fā)現(xiàn)很多問題瞬間就解決了。還有一類更隱蔽的情況提示“文件夾不是空的”用資源監(jiān)視器搜文件夾路徑又搜不到東西。這類問題通常是因?yàn)槲募A里有一個(gè)文件名特別長或者包含特殊字符的文件系統(tǒng)在圖形界面下處理不了。解決辦法還是用命令行定位到那個(gè)特殊文件然后用刪除命令刪掉再回來刪文件夾就會(huì)順利很多。5.2 強(qiáng)制刪除之后還會(huì)有什么后遺癥有時(shí)候文件確實(shí)刪掉了但電腦好像留下了一些奇奇怪怪的問題。最常見的就是磁盤容量沒有任何變化明明刪了大文件磁盤空間卻沒有多出來。這種情況多半是某個(gè)后臺(tái)進(jìn)程仍然緩存著這個(gè)文件的句柄系統(tǒng)還沒有真正釋放磁盤空間。處理方法很簡單重啟一次電腦緩存會(huì)清理掉空間就會(huì)恢復(fù)。還有一個(gè)后遺癥是你強(qiáng)制殺掉了一個(gè)正在寫日志的進(jìn)程導(dǎo)致關(guān)聯(lián)軟件出現(xiàn)異常。比如某服務(wù)啟動(dòng)失敗或者數(shù)據(jù)庫文件報(bào)錯(cuò)。如果你的文件是某個(gè)軟件的運(yùn)行庫或者配置文件刪掉之后會(huì)導(dǎo)致軟件無法正常運(yùn)行。所以我總說刪除被占用文件前一定先問自己一句這個(gè)東西刪了到底對(duì)誰有影響。如果文件是軟件安裝目錄里的內(nèi)容更好的做法是用軟件自帶的卸載程序而不是直接刪文件。另外要注意系統(tǒng)盤根目錄下一些特殊文件例如休眠文件、頁面文件、系統(tǒng)轉(zhuǎn)儲(chǔ)文件它們被占用是正常運(yùn)行的體現(xiàn)不建議花時(shí)間去強(qiáng)制刪除更不要在網(wǎng)上找各種“優(yōu)化工具”去清理它們。這類文件刪了之后可能會(huì)影響系統(tǒng)的休眠功能、虛擬內(nèi)存設(shè)置甚至導(dǎo)致系統(tǒng)不穩(wěn)定壓根不屬于“垃圾文件”的范疇。5.3 我的幾條避坑經(jīng)驗(yàn)這幾年下來我在“刪除被占用文件”這件事上踩過不少坑也和很多開發(fā)者交流過總結(jié)出了幾條很實(shí)用的經(jīng)驗(yàn)。第一條先停服務(wù)不急著殺進(jìn)程。很多開發(fā)相關(guān)的軟件比如本地服務(wù)器、數(shù)據(jù)庫、文件監(jiān)聽服務(wù)它們占用的文件都是正在使用的資源。直接結(jié)束進(jìn)程雖然能讓文件解鎖但會(huì)留下很多副作用比如數(shù)據(jù)寫一半、服務(wù)狀態(tài)異常。正確做法是先到服務(wù)列表或者軟件設(shè)置里把對(duì)應(yīng)服務(wù)停掉再刪除文件。雖然操作路徑長一點(diǎn)但安全得多。第二條解決“刪不掉”問題的最好時(shí)機(jī)是在你下載完文件、安裝完軟件、看完視頻之后馬上測試刪除。很多占用是軟件釋放延遲造成的過一分鐘可能就沒問題了。反而是反復(fù)重試、反復(fù)殺進(jìn)程容易把事情弄得更復(fù)雜。第三條如果你經(jīng)常遇到文件被占用大概率不是運(yùn)氣問題而是某個(gè)軟件存在句柄泄漏。比如某個(gè)聊天軟件每次接收文件后都不釋放句柄或者某個(gè)編輯器會(huì)自動(dòng)鎖定整個(gè)項(xiàng)目目錄。這種軟件你需要重點(diǎn)觀察必要的時(shí)候改成用其他工具替代而不是每次都跟文件鎖搏斗。第四條刪除文件前盡量把目標(biāo)文件復(fù)制一份到U盤或者備份目錄。這一步看似多余但當(dāng)你刪除的是工作文件時(shí)這個(gè)習(xí)慣能救你很多次。萬一刪完之后發(fā)現(xiàn)還需要你還有后悔藥吃。占用文件刪除不了的時(shí)候先復(fù)制一份到別處再慢慢研究怎么刪壓力會(huì)小很多。我個(gè)人的習(xí)慣操作順序是先試試直接重命名不行就用資源監(jiān)視器查進(jìn)程查到就正常退出或重啟資源管理器。再不行就排隊(duì)進(jìn)入安全模式安全模式里還不行才上PE環(huán)境。整個(gè)鏈條走下來絕大多數(shù)文件都能順利干掉。最后再提醒一句電腦文件這個(gè)東西能刪干凈當(dāng)然是好事但“刪不掉”本身很多時(shí)候是電腦在保護(hù)你別把所有文件都當(dāng)成垃圾閉著眼睛強(qiáng)刪賠上的可能就是系統(tǒng)穩(wěn)定性了。