在 PowerShell 里根据进程名杀掉进程

2023-10-22 11:11:55 浏览数 (2)

任务管理器杀进程大家都会,不过如果你的系统被卡到任务管理器都无法操作了,怎么办?直接在 PowerShell 中干掉!另外,这也非常容易集成到各种工具链中。

系列博客:

  • 在 CMD 里根据进程名杀掉进程 - walterlv
  • 在 PowerShell 里根据进程名杀掉进程 - walterlv

Stop-Process / kill

PowerShell 脚本 Stop-Process 可以用来结束进程。

结束进程名为 chrome 的进程:

1

Stop-Process -Name chrome

1 2

# kill 是 Stop-Process 的简写,ProcessName 是 Name 的别名。 kill -ProcessName chrome

如果除了关闭你正在看的博客,还顺便要把自己正在编写的代码关闭掉,可以传多个进程名:

1

Stop-Process -Name chrome,code

taskkill 命令

PowerShell 依然能使用 CMD 命令,于是以下命令依旧可以工作:

1

taskkill /f /t /im chrome.exe

详见:

  • 在 CMD 里根据进程名杀掉进程 - walterlv

其他间接玩法

Process.Kill

Get-Process 能拿到进程对象,于是可以利用管道拿到对象将其关闭:

1

Get-Process -Name chrome | Stop-Process

更间接一点,遍历所有拿到的 Process 对象,然后杀掉:

1

Get-Process -Name chrome | Foreach-Object { $_.Kill() }

本文会经常更新,请阅读原文: https://blog.walterlv.com/post/kill-process-by-name-using-powershell.html ,以避免陈旧错误知识的误导,同时有更好的阅读体验。

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名 吕毅 (包含链接: https://blog.walterlv.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请 与我联系 ([email protected]) 。

0 人点赞