当前位置: 首页 > news >正文

安全地自动重新启动 Windows 资源管理器Bat脚本

安全地自动重新启动 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

脚本说明

  1. 检查占用情况:借助openfiles命令来查看是否有其他进程正在使用explorer.exe。要是发现有进程占用,脚本会输出提示信息并终止运行。
  2. 终止资源管理器:若没有发现占用情况,就利用taskkill命令终止资源管理器进程。
  3. 等待进程终止:使用ping命令暂停脚本执行 3 秒,从而保证资源管理器进程已彻底终止。
  4. 重新启动资源管理器:通过start命令重新启动资源管理器。
  5. 输出结果:脚本会输出操作结果,并暂停以让你查看信息。

使用方法

  1. 把上述代码复制到一个文本文件里。
  2. 将文件扩展名改为.bat,例如restart_explorer.bat
  3. 右键点击该文件,选择 “以管理员身份运行”。

这样就能够安全地重新启动 Windows 资源管理器了。

解决乱码问题:

把脚本文件的编码格式改成与命令提示符兼容的编码,一般是 ANSI 编码。具体步骤如下:

  1. 用记事本打开 .bat 文件。
  2. 选择 “文件” -> “另存为”。
  3. 在 “保存类型” 下拉框中选择 “所有文件”,在 “编码” 下拉框中选择 “ANSI”。
  4. 点击 “保存”,覆盖原文件。

设置默认管理员执行该脚本

  1. 创建快捷方式:在桌面上,右键点击批处理脚本文件,选择 “创建快捷方式”。此时桌面上会生成一个指向该脚本的快捷方式图标。
  2. 设置快捷方式属性:右键点击新创建的快捷方式图标,选择 “属性”。
  3. 勾选 “以管理员身份运行”:在弹出的 “属性” 窗口中,切换到 “快捷方式” 选项卡,点击 “高级” 按钮。在弹出的 “高级属性” 窗口中,勾选 “以管理员身份运行”,然后依次点击 “确定” 保存设置。

之后,只要双击这个快捷方式,脚本就会以管理员身份运行。


http://www.mrgr.cn/news/95013.html

相关文章:

  • Unity 云渲染本地部署方案
  • LeetCode[142] 环形链表 II
  • JAVA中关于图形化界面的学习(GUI)动作监听,鼠标监听,键盘监听
  • 【Java】链表(LinkedList)(图文版)
  • Linux IP 配置
  • 利用大语言模型生成的合成数据训练YOLOv12:提升商业果园苹果检测的精度与效率
  • Spring相关面试题
  • numpy学习笔记1:zeros = np.zeros((3, 3)) 详解
  • 安装并使用anaconda(宏观版)
  • 库的制作与原理 linux第课
  • 企业级 GitLab 开发流程全解
  • dockerfile 编写入门
  • numpy学习笔记4:np.arange(0, 10, 2) 的详细解释
  • sparksql的Transformation与 Action操作
  • 浏览器工作原理深度解析(阶段二):HTML 解析与 DOM 树构建
  • 【二分查找】模板题:在排序数组中查找元素的第一个和最后一个位置
  • React生命周期
  • 可视化图解算法:链表中倒数(最后)k个结点
  • java-正则表达式-集合-泛型
  • 【数据库】SQL设计指南:如何编写性能优异的SQL