异常脚本在后台静默运行导致CPU高占用,需通过任务管理器勾选“命令行”列识别bash/sh/powershell/cmd调用的无限循环命令,再用taskkill或删文件终止,并清理计划任务、启动项和注册表持久化项。

电脑突然卡顿、风扇狂转,任务管理器里却看不到明显高占用进程,CPU使用率却长期压在90%以上——这很可能是异常脚本在后台静默运行,它不显示窗口、不注册服务、不写入启动项,只靠无限循环调用系统命令偷偷吃光算力。
先确认是不是脚本在作祟
打开任务管理器(Ctrl+Shift+Esc),切到「详细信息」选项卡,右键列标题 → 勾选「命令行」。这一步至关重要,【不勾选“命令行”就永远看不到脚本真身】。
按CPU降序排列,逐行扫视「命令行」列内容:重点找包含 bash -c、sh -c、powershell -c、cmd /c 的条目;再盯住那些反复出现的关键词:while true、sleep 1、/proc/stat、df -l、netstat -tpan、head -n、tail -n、curl http、wget --quiet。
如果看到某进程的命令行像这样:bash -c while true; do sleep 1; cat /proc/loadavg; done,不用犹豫,这就是元凶。
快速终止并验证脚本进程
方法一:直接结束任务
在任务管理器「详细信息」页中,右键可疑进程 → 选择「结束任务」。注意:这只能杀掉当前实例,不能阻止它再生。
方法二:命令行精准击杀(推荐)
以管理员身份运行 PowerShell,执行:taskkill /f /pid [此处填PID],PID 就是任务管理器里该进程对应的数字。比图形界面更稳,不会误点相邻进程。
方法三:釜底抽薪——查清来源后删文件
右键该进程 → 「打开文件所在位置」。绝大多数异常脚本不在 C:\Windows\System32 或 C:\Program Files 下,而是藏在 C:\Users\XXX\AppData\Local\Temp\、C:\ProgramData\ 或某个伪装成“Update”的子目录里。找到对应 .bat/.ps1/.sh 文件,直接删除,并清空回收站。
防止脚本死灰复燃
第一步:检查计划任务
按下 Win+R,输入 taskschd.msc 回车 → 左侧展开「任务计划程序库」→ 右侧点「当前正在运行的任务」→ 对照刚才杀掉的进程 PID,看是否有匹配任务。重点关注名称含 update、check、monitor、sync、agent 的条目,右键 →「禁用」或「删除」。
第二步:扫描启动文件夹
Win+R 输入 shell:startup 回车,检查当前用户启动文件夹;再输 shell:common startup 检查所有用户启动文件夹。删掉里面不认识的 .bat、.vbs、.ps1 文件。
第三步:揪出持久化载体
在 PowerShell 中执行:Get-ChildItem HKCU:\Software\Microsoft\Windows\CurrentVersion\Run, HKLM:\Software\Microsoft\Windows\CurrentVersion\Run -ErrorAction SilentlyContinue | ForEach-Object { Get-ItemProperty $_.PsPath }。检查输出结果里有没有指向 Temp 目录或可疑路径的启动项,记下名称,用 regedit 删除对应键值。

















