如何在 Windows 上从命令行终止所有无头 Chrome 实例?

如何在 Windows 上从命令行终止所有无头 Chrome 实例?

在 Mac 和 Linux 上你可以运行

pkill -f "(chrome)?(--headless)"

终止所有无头 Chrome 实例。

我想要一些可以在 Windows 上运行的类似东西。

答案1

不幸的是,CommandLine无法通过常规进程管理命令轻松检索,因此我们需要深入了解 WMI。这往往会使命令更加复杂,但您可以为其设置别名或将其隐藏在可以重复使用的脚本/函数中。

以下是如何在 PowerShell 中执行此操作的示例:

Get-CimInstance Win32_Process -Filter "Name = 'chrome.exe' AND CommandLine LIKE '%--headless%'" | %{Stop-Process $_.ProcessId}

稍微概括一下,我们还可以得到:

$name = 'chrome.exe'
$cmdcontains '--headless'
Get-CimInstance Win32_Process -Filter "Name = '$name' AND CommandLine LIKE '%$cmdcontains%'" | %{Stop-Process $_.ProcessId}

或者,Name可以使用更宽松的匹配,或者我们可以像您当前所做的那样纯粹在命令行上进行过滤:

Get-CimInstance Win32_Process -Filter "CommandLine LIKE '%chrome.exe%--headless%'" | %{Stop-Process $_.ProcessId}

更一般地,您可以通过脚本将其扩展为 cmdlet:https://technet.microsoft.com/en-us/library/ff677563.aspx


如果您想在 cmd 中执行此操作,则适用相同的过程,只是您需要从输出中获取 PIDwmic并将其传递给taskkill

答案2

如果有人通过谷歌搜索来到这里......在 OSX 上这也有效:

sudo killall Google\ Chrome 

相关内容