You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

原用于系统维护的PowerShell脚本运行后误删软件问题排查问询

PowerShell 脚本故障原因分析

以下是触发软件批量删除问题的核心原因:

  • TEMP 环境变量异常(最高概率原因)
    脚本中通过Get-ChildItem "env:\TEMP"获取用户临时目录路径,如果你的系统 TEMP 环境变量被篡改、配置错误(比如被误设为C:\、C:\Program Files、C:\Users等路径),后续执行的Remove-Item -Recurse "$temp2\*" -Force命令会直接删除目标路径下所有文件,完全符合所有软件被批量删除的特征。
    额外说明:脚本中定义的$objShell、$objFolder变量完全未被调用,属于冗余无效代码,没有实际作用。
  • 磁盘清理工具预配置异常
    脚本调用的cleanmgr /sagerun:1命令,会执行提前通过cleanmgr /sageset:1配置好的清理规则。如果此前配置规则时误勾选了「已安装程序」「Windows 安装文件」「程序功能」等高风险清理项,或是系统磁盘清理组件配置损坏,就会把正常安装的软件判定为垃圾文件删除。
  • 脚本内容不完整风险
    你贴出的脚本末尾write-Host "Clean Up Task completed !" "存在多余的未闭合引号,说明粘贴的内容存在截断,不排除你实际运行的脚本包含你未贴出的恶意删除逻辑,或是被第三方篡改过。
  • 权限放大风险
    如果你是用管理员权限运行的该脚本,Remove-Item带-Force参数可以绕过大部分权限限制,一旦路径错误就会直接删除系统级、其他用户的程序文件,不会触发普通的权限不足报错。

同类脚本安全使用建议

  • 执行删除操作前先做路径校验:删除命令执行前先打印目标路径确认无误,或者给Remove-Item加上-WhatIf参数先预览删除范围,不要直接加-Force参数强制执行。
  • 调用cleanmgr /sagerun前必须先执行cleanmgr /sageset:对应编号确认清理项,仅勾选临时文件、回收站、下载文件等明确的垃圾内容。

内容的提问来源于stack exchange,提问作者Hollowbaconpain

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 06:36:02