
如果您需要在Windows系统中通过PowerShell终止特定进程,但发现常规操作无法响应或进程持续占用资源,则可能是由于权限不足、进程名不匹配或未启用强制终止参数。以下是使用Stop-Process命令强制关闭指定进程的具体方法:
一、以管理员身份启动PowerShell
Stop-Process命令在终止非当前用户所有进程(如系统服务、其他用户会话中的进程)时,必须具备管理员权限;否则将返回“访问被拒绝”错误。
1、按 Win + X 组合键,从弹出菜单中选择 终端(管理员) 或 Windows PowerShell(管理员)。
2、若出现用户账户控制(UAC)提示,点击 是 允许应用对设备进行更改。
3、确认窗口标题栏中包含 管理员 字样,表示已获得足够权限。
二、按进程名称终止所有匹配实例
该方式适用于已知目标程序的主进程名(不含.exe后缀),可一次性终止所有同名运行实例,例如关闭全部Chrome浏览器窗口。
1、在PowerShell窗口中输入:Stop-Process -Name “chrome” -Force,然后按回车。
2、若需终止资源管理器,输入:Stop-Process -Name “explorer” -Force,系统将立即重启桌面环境(部分版本可能短暂黑屏)。
3、进程名区分大小写不敏感,但必须与Get-Process输出中的ProcessName字段完全一致(如“notepad”而非“notepad.exe”)。
三、按进程ID(PID)精准终止单一进程
当多个同名进程并存且仅需关闭其中某一个时,使用PID可避免误杀,尤其适用于调试场景或后台服务实例分离。
1、先执行命令:Get-Process | Where-Object {$_.ProcessName -eq “chrome”} | Format-Table Id, ProcessName, Responding,列出所有chrome进程及其PID和响应状态。
2、从输出中识别目标进程的ID值(例如 12345)。
3、执行终止指令:Stop-Process -Id 12345 -Force。
四、使用模糊匹配批量终止相关进程
该方法适用于进程名不固定或存在多个变体的情况,例如终止所有含“word”的Office组件进程(winword.exe、msoia.exe等),无需逐个确认名称。
1、输入完整管道命令:Get-Process | Where-Object {$_.ProcessName -like “*word*”} | Stop-Process -Force。
2、替换星号间内容即可适配其他关键词,如 “*edge*” 或 “*python*”。
3、执行前建议先运行左侧部分(不含Stop-Process)验证匹配结果,防止误删关键进程。
五、按响应状态筛选并终止无响应进程
系统内置响应检测机制可自动识别挂起或假死进程,避免手动判断失误,特别适合处理界面冻结但进程仍在运行的应用。
1、运行筛选命令:Get-Process | Where-Object {$_.Responding -eq $false},查看所有无响应进程列表。
2、确认列表中无系统关键进程(如csrss.exe、winlogon.exe)后,执行终止操作:Get-Process | Where-Object {$_.Responding -eq $false} | Stop-Process -Force。
3、该命令不会终止自身所在PowerShell会话,但可能导致部分UI组件短暂失效。

评论(0)