安全地自動重新啟動 Windows 資源管理器腳本
可以直接運行的 Windows 批處理腳本,用于安全地自動重新啟動 Windows 資源管理器。該腳本會在殺死資源管理器之前檢查是否有其他進程正在使用資源管理器相關的文件。
Bat腳本
@echo off
title 資源管理器安全重啟工具
color 0A:: 檢查是否以管理員權限運行
net session >nul 2>&1
if %errorLevel% neq 0 (echo 此腳本需要以管理員權限運行,請右鍵單擊此腳本并選擇“以管理員身份運行”。pauseexit /b
)echo 正在檢查是否有其他進程占用資源管理器...:: 檢查是否有其他進程正在使用 explorer.exe
for /f "tokens=2 delims=," %%a in ('openfiles /query /fo csv /nh ^| findstr /i "explorer.exe" 2^>nul') do (echo 發現有其他進程正在使用資源管理器,無法安全重啟。pauseexit /b
)echo 沒有發現其他進程占用資源管理器,準備重啟...:: 終止資源管理器進程
echo 正在終止資源管理器進程...
taskkill /f /im explorer.exe
if %errorLevel% neq 0 (echo 終止資源管理器進程時出現錯誤,錯誤代碼: %errorLevel%pauseexit /b
):: 等待一段時間確保進程已終止
echo 正在等待資源管理器進程完全終止...
ping -n 3 127.0.0.1 >nul:: 檢查資源管理器進程是否已終止
tasklist /fi "imagename eq explorer.exe" | find /i "explorer.exe" >nul
if %errorLevel% equ 0 (echo 資源管理器進程未能成功終止,無法繼續重啟操作。pauseexit /b
):: 重新啟動資源管理器
echo 重新啟動資源管理器...
start explorer.exe
if %errorLevel% neq 0 (echo 啟動資源管理器時出現錯誤,錯誤代碼: %errorLevel%pauseexit /b
)echo 資源管理器已成功重啟。
echo 按任意鍵關閉此窗口...
pause >nul
腳本說明
- 檢查占用情況:借助
openfiles
命令來查看是否有其他進程正在使用explorer.exe
。要是發現有進程占用,腳本會輸出提示信息并終止運行。 - 終止資源管理器:若沒有發現占用情況,就利用
taskkill
命令終止資源管理器進程。 - 等待進程終止:使用
ping
命令暫停腳本執行 3 秒,從而保證資源管理器進程已徹底終止。 - 重新啟動資源管理器:通過
start
命令重新啟動資源管理器。 - 輸出結果:腳本會輸出操作結果,并暫停以讓你查看信息。
使用方法
- 把上述代碼復制到一個文本文件里。
- 將文件擴展名改為
.bat
,例如restart_explorer.bat
。 - 右鍵點擊該文件,選擇 “以管理員身份運行”。
這樣就能夠安全地重新啟動 Windows 資源管理器了。
解決亂碼問題:
把腳本文件的編碼格式改成與命令提示符兼容的編碼,一般是 ANSI
編碼。具體步驟如下:
- 用記事本打開
.bat
文件。 - 選擇 “文件” -> “另存為”。
- 在 “保存類型” 下拉框中選擇 “所有文件”,在 “編碼” 下拉框中選擇 “ANSI”。
- 點擊 “保存”,覆蓋原文件。
設置默認管理員執行該腳本
- 創建快捷方式:在桌面上,右鍵點擊批處理腳本文件,選擇 “創建快捷方式”。此時桌面上會生成一個指向該腳本的快捷方式圖標。
- 設置快捷方式屬性:右鍵點擊新創建的快捷方式圖標,選擇 “屬性”。
- 勾選 “以管理員身份運行”:在彈出的 “屬性” 窗口中,切換到 “快捷方式” 選項卡,點擊 “高級” 按鈕。在彈出的 “高級屬性” 窗口中,勾選 “以管理員身份運行”,然后依次點擊 “確定” 保存設置。
之后,只要雙擊這個快捷方式,腳本就會以管理員身份運行。